Nothing
context("SA indices")
test_that("SA indices produce the same results as spdep when expected", {
skip_on_cran()
# skip_if_not_installed("spatialreg")
d=10
data(georgia)
W <- shape2mat(georgia, style = "W")
C <- shape2mat(georgia, style = "B")
nb <- spdep::poly2nb(georgia)
lw.W <- spdep::nb2listw(nb, style = "W")
lw.C <- spdep::nb2listw(nb, style = "B")
x <- sim_sar(w=W, rho = 0.7)
n <- length(x)
## Moran coefficient, binary matrix C
mc_spdep <- spdep::moran.test(x, lw.C)$estimate["Moran I statistic"]
mc_spdep <- as.numeric(mc_spdep)
mc_geostan <- mc(x, C, digits = d)
expect_equal(mc_geostan, mc_spdep)
## Moran coefficient, row-standardized matrix W
mc_spdep <- spdep::moran.test(x, lw.W)$estimate["Moran I statistic"]
mc_spdep <- as.numeric(mc_spdep)
mc_geostan <- mc(x, W, digits = d)
expect_equal(mc_geostan, mc_spdep)
## Local Moran's I: is not calculated in the same manner
geo_lisa <- geostan::lisa(x, W, type = FALSE, digits = d)
spdep_lisa <- as.numeric(spdep::localmoran(x, lw.W)[,"Ii"])
m2 <- sum(scale(x, center=T, scale = T)^2)/length(x)
expect_equal(geo_lisa/m2, spdep_lisa)
## APLE (estimate of SAR SA parameter) (requires external package spatialreg)
# x <- as.numeric(scale(x))
# aple_spdep <- spatialreg::aple(x, lw.W)
# aple_geostan <- geostan::aple(x, W, digits = d)
# expect_equal(aple_spdep, aple_geostan)
## Geary Ratio
GR_geostan <- gr(x, W, digits = d)
GR_spdep <- spdep::geary.test(x, lw.W)
expect_equal(GR_geostan, as.numeric(GR_spdep$estimate["Geary C statistic"]))
## Local Geary
LG_geostan <- lg(x, W, digits = d)
LG_spdep <- spdep::localC(x, lw.W)
expect_equal(LG_geostan, LG_spdep)
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.