joincount.test | R Documentation |

The BB join count test for spatial autocorrelation using a spatial
weights matrix in weights list form for testing whether same-colour joins
occur more frequently than would be expected if the zones were labelled
in a spatially random way. The assumptions underlying the test are
sensitive to the form of the graph of neighbour relationships and other
factors, and results may be checked against those of `joincount.mc`

permutations.

```
joincount.test(fx, listw, zero.policy=attr(listw, "zero.policy"), alternative="greater",
sampling="nonfree", spChk=NULL, adjust.n=TRUE)
## S3 method for class 'jclist'
print(x, ...)
```

`fx` |
a factor of the same length as the neighbours and weights objects in listw |

`listw` |
a |

`zero.policy` |
default |

`alternative` |
a character string specifying the alternative hypothesis, must be one of "greater" (default), "less" or "two.sided". |

`sampling` |
default “nonfree”, may be “free” |

`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 consistently (up to and including spdep 0.3-28 the adjustment was inconsistent - thanks to Tomoki NAKAYA for a careful bug report) |

`spChk` |
should the data vector names be checked against the spatial objects for identity integrity, TRUE, or FALSE, default NULL to use |

`x` |
object to be printed |

`...` |
arguments to be passed through for printing |

A list with class `jclist`

of lists with class `htest`

for each of the k colours containing the following components:

`statistic` |
the value of the standard deviate of the join count statistic. |

`p.value` |
the p-value of the test. |

`estimate` |
the value of the observed statistic, its expectation and variance under non-free sampling. |

`alternative` |
a character string describing the alternative hypothesis. |

`method` |
a character string giving the method used. |

`data.name` |
a character string giving the name(s) of the data. |

The derivation of the test (Cliff and Ord, 1981, p. 18) assumes that the weights matrix is symmetric. For inherently non-symmetric matrices, such as k-nearest neighbour matrices, `listw2U()`

can be used to make the matrix symmetric. In non-symmetric weights matrix cases, the variance of the test statistic may be negative.

Roger Bivand Roger.Bivand@nhh.no

Cliff, A. D., Ord, J. K. 1981 Spatial processes, Pion, pp. 19-20.

`joincount.mc`

, `joincount.multi`

, `listw2U`

```
data(oldcol)
HICRIME <- cut(COL.OLD$CRIME, breaks=c(0,35,80), labels=c("low","high"))
names(HICRIME) <- rownames(COL.OLD)
joincount.test(HICRIME, nb2listw(COL.nb, style="B"))
joincount.test(HICRIME, nb2listw(COL.nb, style="B"), sampling="free")
joincount.test(HICRIME, nb2listw(COL.nb, style="C"))
joincount.test(HICRIME, nb2listw(COL.nb, style="S"))
joincount.test(HICRIME, nb2listw(COL.nb, style="W"))
by(card(COL.nb), HICRIME, summary)
print(is.symmetric.nb(COL.nb))
coords.OLD <- cbind(COL.OLD$X, COL.OLD$Y)
COL.k4.nb <- knn2nb(knearneigh(coords.OLD, 4))
print(is.symmetric.nb(COL.k4.nb))
joincount.test(HICRIME, nb2listw(COL.k4.nb, style="B"))
cat("Note non-symmetric weights matrix - use listw2U()\n")
joincount.test(HICRIME, listw2U(nb2listw(COL.k4.nb, style="B")))
columbus <- st_read(system.file("shapes/columbus.shp", package="spData")[1], quiet=TRUE)
HICRIME <- cut(columbus$CRIME, breaks=c(0,35,80), labels=c("low","high"))
(nb <- poly2nb(columbus))
lw <- nb2listw(nb, style="B")
joincount.test(HICRIME, lw)
col_geoms <- st_geometry(columbus)
col_geoms[21] <- st_buffer(col_geoms[21], dist=-0.05)
st_geometry(columbus) <- col_geoms
(nb <- poly2nb(columbus))
lw <- nb2listw(nb, style="B", zero.policy=TRUE)
joincount.test(HICRIME, lw)
```

spdep documentation built on Nov. 23, 2023, 9:06 a.m.

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.