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

时间:2019-10-07 13:21:18

标签: r gis

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

我尝试使用

gDistance(A, B, byid = TRUE)

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

1 个答案:

答案 0 :(得分:0)

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

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

这将产生成对的距离。