繁体   English   中英

计算两层之间的成对距离:gDistance(byid = TRUE) 但成对计算?

[英]Compute pairwise distances between two layers: gDistance(byid = TRUE) but pairwise?

在 R 中,我有多边形层 A 和点层 B。两者具有相同数量的特征,存在一一对应(配对):层 A 的每个多边形在层 B 中都有对应的点,反之亦然。 如何计算这些特征对之间的成对距离?

我试着用

gDistance(A, B, byid = TRUE)

但这将计算整个 NxN 矩阵,这是巨大的开销(我只会使用该矩阵的对角线)。

不幸的是,似乎 rgeos 和gDistance做不到......所以我找到了使用sf库的解决方案:

require(sf)
g1 <- st_as_sf(A)
g2 <- st_as_sf(B)
dist <- st_distance(g1, g2, by_element=TRUE)

这将产生成对的距离。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM