當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。