moran.plot: sum or mean?
On Mon, 22 Apr 2013, Robert J. Hijmans wrote:
I am using package spdep. I have a listw object (lw) and a vector of
values (y) and I want to make a Moran scatterplot (with unadjusted
values):
library(spdep)
m <- matrix(c(0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0,
0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0), ncol=6)
lw <- mat2listw(m, style='B')
y <- c(32, 26, 19, 14, 18, 17)
moran.plot(y, lw)
# The values on the vertical axes are the sums of the lagged values
# (as returned by lag(lw, y) ), where I expected the mean (which is
# what the example ?moran.plot example appears to do
# I expected this
x <- cbind(rep(y, each=6), as.vector(m * y))
x <- x[x[,2] > 0, ]
x <- aggregate(x[,2], list(x[,1]), FUN=mean)
colnames(x) <- c('y', 'lagged y')
# and a plot like this
x11()
plot(x)
abline(lm(x[,2] ~ x[,1]), lwd=2)
abline(v=mean(y), lt=2)
abline(h=mean(x[,2]), lt=2)
# What am I missing?
Row standardisation of the weights object: moran.plot(y, mat2listw(m, style='W')) which authors of the Moran scatterplot literature tend to take for granted, see references in ?moran.plot, especially the top of p. 116 in Anselin 1996. Hope this clarifies, Roger
Thanks, Robert
_______________________________________________ R-sig-Geo mailing list R-sig-Geo at r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-geo
Roger Bivand Department of Economics, NHH Norwegian School of Economics, Helleveien 30, N-5045 Bergen, Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43 e-mail: Roger.Bivand at nhh.no