lm.morantest.Rd
Moran's I test for spatial autocorrelation in residuals from an estimated linear model (lm()
).
lm.morantest(model, listw, zero.policy=attr(listw, "zero.policy"),
alternative = "greater", spChk=NULL, resfun=weighted.residuals, naSubset=TRUE)
an object of class lm
returned by lm
; weights
may be specified in the lm
fit, but offsets should not be used
a listw
object created for example by nb2listw
default attr(listw, "zero.policy")
as set when listw
was created, if attribute not set, use global option value; if TRUE assign zero to the lagged value of zones without
neighbours, if FALSE assign NA
a character string specifying the alternative hypothesis, must be one of "greater" (default), "less" or "two.sided".
should the data vector names be checked against the spatial objects for identity integrity, TRUE, or FALSE, default NULL to use get.spChkOption()
default: weighted.residuals; the function to be used to extract residuals from the lm
object, may be residuals
, weighted.residuals
, rstandard
, or rstudent
default TRUE to subset listw object for omitted observations in model object (this is a change from earlier behaviour, when the model$na.action
component was ignored, and the listw object had to be subsetted by hand)
A list with class htest
containing the following components:
the value of the standard deviate of Moran's I.
the p-value of the test.
the value of the observed Moran's I, its expectation and variance under the method assumption.
a character string describing the alternative hypothesis.
a character string giving the method used.
a character string giving the name(s) of the data.
Cliff, A. D., Ord, J. K. 1981 Spatial processes, Pion, p. 203,
data(oldcol)
oldcrime1.lm <- lm(CRIME ~ 1, data = COL.OLD)
oldcrime.lm <- lm(CRIME ~ HOVAL + INC, data = COL.OLD)
lm.morantest(oldcrime.lm, nb2listw(COL.nb, style="W"))
#>
#> Global Moran I for regression residuals
#>
#> data:
#> model: lm(formula = CRIME ~ HOVAL + INC, data = COL.OLD)
#> weights: nb2listw(COL.nb, style = "W")
#>
#> Moran I statistic standard deviate = 2.9539, p-value = 0.001569
#> alternative hypothesis: greater
#> sample estimates:
#> Observed Moran I Expectation Variance
#> 0.235638354 -0.033302866 0.008289408
#>
lm.LMtests(oldcrime.lm, nb2listw(COL.nb, style="W"))
#> Please update scripts to use lm.RStests in place of lm.LMtests
#>
#> Rao's score (a.k.a Lagrange multiplier) diagnostics for spatial
#> dependence
#>
#> data:
#> model: lm(formula = CRIME ~ HOVAL + INC, data = COL.OLD)
#> test weights: listw
#>
#> RSerr = 5.7231, df = 1, p-value = 0.01674
#>
lm.morantest(oldcrime.lm, nb2listw(COL.nb, style="S"))
#>
#> Global Moran I for regression residuals
#>
#> data:
#> model: lm(formula = CRIME ~ HOVAL + INC, data = COL.OLD)
#> weights: nb2listw(COL.nb, style = "S")
#>
#> Moran I statistic standard deviate = 3.1745, p-value = 0.0007504
#> alternative hypothesis: greater
#> sample estimates:
#> Observed Moran I Expectation Variance
#> 0.239317561 -0.033431740 0.007381982
#>
lm.morantest(oldcrime1.lm, nb2listw(COL.nb, style="W"))
#>
#> Global Moran I for regression residuals
#>
#> data:
#> model: lm(formula = CRIME ~ 1, data = COL.OLD)
#> weights: nb2listw(COL.nb, style = "W")
#>
#> Moran I statistic standard deviate = 5.6754, p-value = 6.92e-09
#> alternative hypothesis: greater
#> sample estimates:
#> Observed Moran I Expectation Variance
#> 0.510951264 -0.020833333 0.008779831
#>
moran.test(COL.OLD$CRIME, nb2listw(COL.nb, style="W"),
randomisation=FALSE)
#>
#> Moran I test under normality
#>
#> data: COL.OLD$CRIME
#> weights: nb2listw(COL.nb, style = "W")
#>
#> Moran I statistic standard deviate = 5.6754, p-value = 6.92e-09
#> alternative hypothesis: greater
#> sample estimates:
#> Moran I statistic Expectation Variance
#> 0.510951264 -0.020833333 0.008779831
#>
oldcrime.wlm <- lm(CRIME ~ HOVAL + INC, data = COL.OLD,
weights = I(1/AREA_PL))
lm.morantest(oldcrime.wlm, nb2listw(COL.nb, style="W"),
resfun=weighted.residuals)
#>
#> Global Moran I for regression residuals
#>
#> data:
#> model: lm(formula = CRIME ~ HOVAL + INC, data = COL.OLD, weights =
#> I(1/AREA_PL))
#> weights: nb2listw(COL.nb, style = "W")
#>
#> Moran I statistic standard deviate = 3.0141, p-value = 0.001289
#> alternative hypothesis: greater
#> sample estimates:
#> Observed Moran I Expectation Variance
#> 0.241298974 -0.032224366 0.008235091
#>
lm.morantest(oldcrime.wlm, nb2listw(COL.nb, style="W"),
resfun=rstudent)
#>
#> Global Moran I for regression residuals
#>
#> data:
#> model: lm(formula = CRIME ~ HOVAL + INC, data = COL.OLD, weights =
#> I(1/AREA_PL))
#> weights: nb2listw(COL.nb, style = "W")
#>
#> Moran I statistic standard deviate = 2.822, p-value = 0.002387
#> alternative hypothesis: greater
#> sample estimates:
#> Observed Moran I Expectation Variance
#> 0.223860298 -0.032224366 0.008235091
#>