gearymoran {ade4} | R Documentation

## Moran's I and Geary'c randomization tests for spatial and phylogenetic autocorrelation

### Description

This function performs Moran's I test using phylogenetic and spatial link matrix (binary or general). It uses neighbouring weights so Moran's I and Geary's c randomization tests are equivalent.

### Usage

    gearymoran(bilis, X, nrepet = 999, alter=c("greater", "less", "two-sided"))

### Arguments

`bilis` | : a n by n link matrix where n is the row number of X
`X` | : a data frame with continuous variables
`nrepet` | : number of random vectors for the randomization test
`alter` | a character string specifying the alternative hypothesis, must be one of "greater" (default), "less" or "two-sided"

### Details

`bilis` is a squared symmetric matrix which terms are all positive or null.

`bilis` is firstly transformed in frequency matrix A by dividing it by the total sum of data matrix :

a_ij = bilis_ij / (sum_i sum_j bilis_ij)

The neighbouring weights is defined by the matrix D = diag(d_1,d_2, …) where d_i = sum_j bilis_ij. For each vector x of the data frame X, the test is based on the Moran statistic t(x)Ax where x is D-centred.

### Value

Returns an object of class `krandtest` (randomization tests).

### Author(s)

Sébastien Ollier sebastien.ollier@u-psud.fr
Daniel Chessel

### References

Cliff, A. D. and Ord, J. K. (1973) Spatial autocorrelation, Pion, London.

Thioulouse, J., Chessel, D. and Champely, S. (1995) Multivariate analysis of spatial patterns: a unified approach to local and global structures. Environmental and Ecological Statistics, 2, 1–14.

### See Also

`moran.test` and `geary.test` for classical versions of Moran's test and Geary's one

### Examples

    # a spatial example
    data(mafragh)
    tab0 <- (as.data.frame(scalewt(mafragh$env)))
    bilis0 <- neig2mat(mafragh$neig)
    gm0 <- gearymoran(bilis0, tab0, 999)
    gm0
    plot(gm0, nclass = 20)

    ## Not run:
    # a phylogenetic example
    data(mjrochet)
    mjr.phy <- newick2phylog(mjrochet$tre)
    mjr.tab <- log(mjrochet$tab)
    gearymoran(mjr.phy$Amat, mjr.tab)
    gearymoran(mjr.phy$Wmat, mjr.tab)

    if(adegraphicsLoaded()) {
      g1 <- table.value(mjr.phy$Wmat, ppoints.cex = 0.35, nclass = 5,
        axis.text = list(cex = 0), plot = FALSE)
      g2 <- table.value(mjr.phy$Amat, ppoints.cex = 0.35, nclass = 5,
        axis.text = list(cex = 0), plot = FALSE)
      G <- cbindADEg(g1, g2, plot = TRUE)

    } else {
      par(mfrow = c(1, 2))
      table.value(mjr.phy$Wmat, csi = 0.25, clabel.r = 0)
      table.value(mjr.phy$Amat, csi = 0.35, clabel.r = 0)
      par(mfrow = c(1, 1))
    }

    ## End(Not run)

[Package ade4 version 1.7-13 Index]