计算两类latlong点之间的距离

时间:2015-09-03 14:48:42

标签: r coordinates spatial

我在R中有一系列latlong坐标,它们分为两个人:

name   lat         long
A      -28.63784   28.69085
A      -28.65366   28.70843
A      -28.80918   28.94223
B      -26.71335   22.80713
B      -26.75022   20.58426
B      -34.37791   20.51215

如何计算一个人与另一个人的坐标之间的距离,而不是自身?我在这里看了类似的问题,但我看不到任何可以为我做分组的事情。

由于

1 个答案:

答案 0 :(得分:4)

首先创建两个lon / lat数据框,一个用于个人getWindow().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_LTR); ,另一个用于A

B

字段包中的rdist.earth函数可以计算所有配对的距离矩阵:

locationsA <- subset(d, name == "A", select = c("long", "lat"))
locationsB <- subset(d, name == "B", select = c("long", "lat"))

例如,对于您显示的六行,这些距离是(以英里为单位):

library(fields)
dists <- rdist.earth(locationsA, locationsB)