nb2mat
Spatial weights matrices for neighbours lists
The function generates a weights matrix for a neighbours list with spatial weights for the chosen coding scheme.
 Keywords
 spatial
Usage
nb2mat(neighbours, glist=NULL, style="W", zero.policy=NULL)
listw2mat(listw)
Arguments
 neighbours
 an object of class
nb
 glist
 list of general weights corresponding to neighbours
 style
style
can take values W, B, C, and S zero.policy
 default NULL, use global option value; if FALSE stop with error for any empty neighbour sets, if TRUE permit the weights list to be formed with zerolength weights vectors
 listw
 a
listw
object from for examplenb2listw
Details
Starting from a binary neighbours list, in which regions are either listed as neighbours or are absent (thus not in the set of neighbours for some definition), the function creates an n by n weights matrix with values given by the coding scheme style chosen. B is the basic binary coding, W is row standardised, C is globally standardised, while S is the variancestabilizing coding scheme proposed by Tiefelsdorf et al. 1999, p. 167168.
The function leaves matrix rows as zero for any regions with zero neighbours fore zero.policy TRUE. These will in turn generate lag values of zero, equivalent to the sum of products of the zero row t(rep(0, length=length(neighbours))) %*% x
, for arbitraty numerical vector x
of length length(neighbours)
. The spatially lagged value of x for the zeroneighbour region will then be zero, which may (or may not) be a sensible choice.
Value

An n by n matrix, where n=length(neighbours)
References
Tiefelsdorf, M., Griffith, D. A., Boots, B. 1999 A variancestabilizing coding scheme for spatial link matrices, Environment and Planning A, 31, pp. 165180.
See Also
Examples
example(columbus)
coords < coordinates(columbus)
col005 < dnearneigh(coords, 0, 0.5, attr(col.gal.nb, "region.id"))
summary(col005)
col005.w.mat < nb2mat(col005, zero.policy=TRUE)
table(round(apply(col005.w.mat, 1, sum)))