问题标签 [spdep]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - R spdep 巨型权重矩阵
我是空间统计的新手,我正在尝试为 R 中美国的所有人口普查区域创建一个空间权重矩阵。大约有 74000 个区域。
基于美国人口普查老虎文件,我创建了所有大片的 shapefile,然后做了(使用spdep
包):
这很好用,虽然 am 很大。
下一个:
这给了我这个错误:
显然我的笔记本电脑无法处理 40.9 Gb 的内存。我尝试在 AWS EC2 云上执行此操作,但要获得那么多内存,我需要获得一个非常大的实例,我想避免这种情况,因为我是云计算的新手,宁愿在免费的 T2 中玩。微型沙箱(最多 1 GiB 的内存),直到我准备好在更大的机器上花一些钱。如果我可以将权重矩阵转换为稀疏矩阵,我想我可以处理它,但我不知道该怎么做。我试着做这样的事情:
但在创建稀疏矩阵之前,它仍然需要所有内存来执行 nb2mat 命令。
有什么解决办法吗?
r - spdep (R) Queen Contiguity Neighborhood 中缺少链接
我对使用spdep
R 中的库绘制 Queen Contiguity Neighbors 的以下结果感到困惑。
使用世界形状文件 wrld_simp 获取质心点(空间坐标)
为了得到女王的邻接邻居,我做
然后我绘制形状文件
和Queen Contiguity 邻居:
你绘制它(或者如果你只是运行summary(queen_nb)
),你可以看到许多邻居没有连接(例如智利是一个孤立的)。
你有什么提示吗?
r - 空间相关图
我正在尝试为一个研究巴西大西洋森林砍伐森林的项目运行空间自相关图。
然而,我对为什么遇到这个问题感到困惑。
问题
当我运行代码的初始部分时,我收到一个错误
错误:ncol(x) == 2 不是 TRUE
我的代码是
然后我希望移动运行这段代码
我的数据是
带有标题的矢量数据集
r - 空间受限数据的 K 均值聚类 - spdep 包中的滑冰者
我想使用 k-means 聚类从自组织地图中对码本进行聚类。但是,鉴于数据的“空间”性质,我想限制聚类,以便只有连续的节点聚集在一起。看了一圈后,我决定尝试使用包skater
中的功能spdep
。
这是我一直在做的一个例子。
我知道上面的代码真的很笨拙而且不优雅(请多多包涵)。我尝试使用mstree(nb2listw(nbs))[,1:2]
,但它没有列出所有链接。我不确定我是否完全理解这是在做什么,所以我手动创建了我的边矩阵。
然后我尝试将此矩阵用于溜冰者功能
但我收到以下错误消息:
Error in colMeans(data[id, , drop = FALSE]) :
error in evaluating the argument 'x' in selecting a method for function 'colMeans': Error in data[id, , drop = FALSE] : subscript out of bounds
但是,如果我使用mstree
边缘,我不会收到错误消息,但结果根本没有意义。
非常感谢有关此错误消息的任何帮助(或有关如何进行我想做的空间受限聚类的替代建议)。
r - 修改 SPDEP 包 - 插入新功能
我正在尝试修改 R 包 spdep 的 stsls 函数。该函数使用两阶段最小二乘法计算空间自回归函数。对于这两个阶段,该函数使用相同的空间矩阵。我想要的是创建一个新函数,比如 stslsm,它使用两个不同的空间矩阵,一个用于第一阶段(inlistw),一个用于第二阶段(listw)。
为此,我使用了 stsls 函数,我添加了一个新条目 inlistw,并相应地修改了脚本。对于那些感兴趣的人,代码在这篇文章的底部,但请注意这只是第一次试用。
现在的问题是我不知道如何在 spdep 包中插入这个新功能。我阅读了关于这个问题的不同帖子。最常见的建议是:
但是在第二行代码之后,我得到以下内容
我被困在这里。你有什么建议吗?
r - 在 R 中创建空间集群 LISA 的地图
我想创建一个显示现象的局部空间集群的地图,最好使用 Local Moran (LISA)。
在下面的可重现示例中,我使用计算本地莫兰指数,spdep
但我想知道是否有简单的方法来映射集群,最好使用ggplot2
. 帮助 ?
现在为了使这个示例更类似于我的真实数据集,我NA
的形状文件中有一些值,它们代表多边形中的孔,因此这些区域不应该用于计算。
r - R 中的 mat2listw 函数是否返回行标准化的空间权重矩阵?
在这个问题的已接受答案的讨论中, user3050574 说:
“......据我了解, mat2listw从当前只是二进制形式的矩阵创建行标准化权重矩阵。”
这是我读到这种说法的唯一地方。在“spdep”R文档中,据说
“该函数将方形空间权重矩阵(可选的稀疏矩阵)转换为权重列表对象,......”
这种转换是否包括行标准化?
我有一个权重矩阵,每个元素都是我想要应用的确切权重。因此,确定 mat2listw 函数是否生成行标准化权重矩阵对我来说至关重要。
r - Spdep:Gmerrosar 残差中的异方差性检验
spdep
在R中使用,并在进行Jarque-Bera测试确认由我的空间误差模型的最大似然估计产生的残差的非正态性之后,我使用了广义矩技术 ( GMerrorsar
)。现在我想测试当前异方差GMerrosar
问题的残差,以决定是停留在这一步还是去估计一个SHAC模型。
什么测试spdep
可以检查模型的异方差性GMerrorsar
?我看到Breusch-Pagan ( bptest.sarlm
) 测试不适用于这种情况。
r - 如何在spdep R中的空间分析中输入相异矩阵
目标:我想在坐标对之间创建一个相异矩阵。我想使用这个矩阵作为输入来使用 Moran's I (LISA) 和后者在地理加权回归 (GWR) 中计算局部空间集群。
问题:我知道我可以dnearneigh{spdep}
用来计算距离矩阵。但是,我想使用我已经估计的多边形之间的旅行时间。在实践中,我认为这就像输入一个相异矩阵,它根据另一个特征告诉多边形之间的距离/差异。我尝试将矩阵输入到dnearneigh{spdep}
,但出现错误Error: ncol(x) == 2 is not TRUE
有什么建议么?下面有一个可重现的示例:
编辑:再深入一点,我想我可以使用mat2listw{spdep}
,但我仍然不确定它是否保持矩阵和多边形之间的对应关系。如果我添加row.names = T
它会返回一个错误row.names wrong length
:(
可重现的例子
计算简单的距离矩阵
现在如何使用我的diss_matrix_invers
这里?
r - 从权重列表对象 spdep R 中提取空间 ID
我曾经mat2listw{spdep}
创建一个权重列表对象,稍后将在空间回归中使用该对象。我想从此权重列表对象中检索用于创建它的多边形的 ID。是否可以从对象中恢复此信息?
这是一个可重现的示例: