当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R wrld_1deg 世界一级网格单元的连续性矩阵


R语言 wrld_1deg 位于 Matrix 包(package)。

说明

该矩阵使用基于great-circle 中心间距离的标准,给出了世界陆地区域的 15260 个one-degree 网格单元的连续性。

用法

data(wrld_1deg)

格式

dsCMatrix 稀疏对称矩阵,具有 55973 个非零条目。

例子


data(wrld_1deg, package = "Matrix")
(n <- ncol(wrld_1deg))
I <- .symDiagonal(n)

doExtras <- interactive() || nzchar(Sys.getenv("R_MATRIX_CHECK_EXTRA"))
set.seed(1)
r <- if(doExtras) 20L else 3L
rho <- 1 / runif(r, 0, 0.5)

system.time(MJ0 <- sapply(rho, function(mult)
    determinant(wrld_1deg + mult * I, logarithm = TRUE)$modulus))

## Can be done faster by updating the Cholesky factor:

C1 <- Cholesky(wrld_1deg, Imult = 2)
system.time(MJ1 <- sapply(rho, function(mult)
    determinant(update(C1, wrld_1deg, mult), sqrt = FALSE)$modulus))
stopifnot(all.equal(MJ0, MJ1))

C2 <- Cholesky(wrld_1deg, super = TRUE, Imult = 2)
system.time(MJ2 <- sapply(rho, function(mult)
    determinant(update(C2, wrld_1deg, mult), sqrt = FALSE)$modulus))
stopifnot(all.equal(MJ0, MJ2))

来源

海岸行数据被读入R使用函数从 GSHHS 数据库中Rgshhs从包装中maptools。南极洲被排除在外。使用函数生成了大约one-degree网格Sobj_SpatialGrid,也来自maptools。使用以下方法识别以陆地为中心的网格单元over类的方法SpatialPolygonsSpatialGrid,在包中定义sp。这些的邻居是通过传递结果来识别的SpatialPixels对象到函数dnearneigh从包装中spdep,使用 cut-off 和 great-circle 距离sqrt(2)中心之间的公里数。

使用包 spdep spatialreg 中的函数 nb2listwsimilar.listw 使用 row-standardized(然后对称)空间权重来增强邻居列表。使用 spatialreg 中的 as_dsTMatrix_listw 将生成的 listw 对象强制转换为 dsTMatrix 类,然后强制转换为 dsCMatrix 类。

参考

Ord, J. K. (1975). Estimation methods for models of spatial interaction. Journal of the American Statistical Association, 70(349), 120-126. doi:10.2307/2285387

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Contiguity Matrix of World One-Degree Grid Cells。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。