R: Global G test for spatial autocorrelation

globalG.test {spdep} | R Documentation

## Global G test for spatial autocorrelation

### Description

The global G statistic for spatial autocorrelation, complementing the local Gi LISA measures: `localG`.

### Usage

    globalG.test(x, listw, zero.policy=NULL, alternative="greater",
     spChk=NULL, adjust.n=TRUE, B1correct=TRUE, adjust.x=TRUE, Arc_all_x=FALSE)

### Arguments

`x` | a numeric vector the same length as the neighbours list in listw
`listw` | a `listw` object created for example by `nb2listw`; if a sequence of distance bands is to be used, it is recommended that the weights style be binary (one of `c("B", "C", "U")`).
`zero.policy` | default NULL, use global option value; if TRUE assign zero to the lagged value of zones without neighbours, if FALSE assign NA
`alternative` | a character string specifying the alternative hypothesis, must be one of "greater" (default), "less" or "two.sided".
`spChk` | should the data vector names be checked against the spatial objects for identity integrity, TRUE, or FALSE, default NULL to use `get.spChkOption()`
`adjust.n` | default TRUE, if FALSE the number of observations is not adjusted for no-neighbour observations, if TRUE, the number of observations is adjusted
`B1correct` | default TRUE, if TRUE, the erratum referenced below: "On page 195, the coefficient of W2 in B1, (just below center of the page) should be 6, not 3." is applied; if FALSE, 3 is used (as in CrimeStat IV)
`adjust.x` | default TRUE, if TRUE, x values of observations with no neighbours are omitted in the denominator of G
`Arc_all_x` | default FALSE, if Arc_all_x=TRUE and adjust.x=TRUE, use the full x vector in part of the denominator term for G

### Value

A list with class `htest` containing the following components:

`statistic` | the value of the standard deviate of Moran's I.
`p.value` | the p-value of the test.
`estimate` | the value of the observed statistic, its expectation and variance.
`alternative` | a character string describing the alternative hypothesis.
`data.name` | a character string giving the name(s) of the data.

### Author(s)

Hisaji ONO hi-ono@mn.xdsl.ne.jp and Roger Bivand Roger.Bivand@nhh.no

### References

Getis. A, Ord, J. K. 1992 The analysis of spatial association by use of distance statistics, Geographical Analysis, 24, p. 195; see also Getis. A, Ord, J. K. 1993 Erratum, Geographical Analysis, 25, p. 276; Bivand RS, Wong DWS 2018 Comparing implementations of global and local indicators of spatial association. TEST, 27(3), 716–748 doi: 10.1007/s11749-018-0599-x

### See Also

`localG`

### Examples

    nc.sids <- st_read(system.file("shapes/sids.shp", package="spData")[1], quiet=TRUE)
    sidsrate79 <- (1000*nc.sids$SID79)/nc.sids$BIR79
    dists <- c(10, 20, 30, 33, 40, 50, 60, 70, 80, 90, 100)
    ndists <- length(dists)
    ZG <- vector(mode="list", length=ndists)
    names(ZG) <- as.character(dists)
    milesxy <- cbind(nc.sids$east, nc.sids$north)
    for (i in 1:ndists) {
      thisnb <- dnearneigh(milesxy, 0, dists[i])
      thislw <- nb2listw(thisnb, style="B", zero.policy=TRUE)
      ZG[[i]] <- globalG.test(sidsrate79, thislw, zero.policy=TRUE)
    }
    t(sapply(ZG, function(x) c(x$estimate[1], x$statistic, p.value=unname(x$p.value))))
    for (i in 1:ndists) {
      thisnb <- dnearneigh(milesxy, 0, dists[i])
      thislw <- nb2listw(thisnb, style="B", zero.policy=TRUE)
      ZG[[i]] <- globalG.test(sidsrate79, thislw, zero.policy=TRUE, alternative="two.sided")
    }
    t(sapply(ZG, function(x) c(x$estimate[1], x$statistic, p.value=unname(x$p.value))))

[Package spdep version 1.2-2 Index]