joincount.test
BB join count statistic for kcoloured factors
The BB join count test for spatial autocorrelation using a spatial
weights matrix in weights list form for testing whether samecolour 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.
 Keywords
 spatial
Usage
joincount.test(fx, listw, zero.policy=NULL, alternative="greater", spChk=NULL, adjust.n=TRUE)
"print"(x, ...)
Arguments
 fx
 a factor of the same length as the neighbours and weights objects in listw
 listw
 a
listw
object created for example bynb2listw
 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".
 adjust.n
 default TRUE, if FALSE the number of observations is not adjusted for noneighbour observations, if TRUE, the number of observations is adjusted consistently (up to and including spdep 0.328 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
get.spChkOption()
 x
 object to be printed
 ...
 arguments to be passed through for printing
Value

A list with class
jclist
of lists with class htest
for each of the k colours containing the following components:Note
The derivation of the test (Cliff and Ord, 1981, p. 18) assumes that the weights matrix is symmetric. For inherently nonsymmetric matrices, such as knearest neighbour matrices, listw2U()
can be used to make the matrix symmetric. In nonsymmetric weights matrix cases, the variance of the test statistic may be negative.
References
Cliff, A. D., Ord, J. K. 1981 Spatial processes, Pion, p. 20.
See Also
Examples
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="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 nonsymmetric weights matrix  use listw2U()\n")
joincount.test(HICRIME, listw2U(nb2listw(COL.k4.nb, style="B")))