R 语言计算空间距离
最近在研究计算真实空间两个点的距离,
比如已知 A, B 两点的经纬度坐标,计算两点之间的距离。
在 R 语言中,已经有很多大神提供的空间地理数据包,经过搜索发现最备受推崇的是 geosphere
包。
使用方法也非常简单:
library(geosphere)
df <- data.frame(lon = c(lon1, lon2), lat=c(lat1, lat2))
distance <- distGeo(df[1, ], df[2, ])
得到的距离结果单位是 m
。
这个包的最大优势是计算速度很快,比如这里有 geosphere
包的 distGeo
方法和 sp
包的 spDistsN1
方法的 Benchmark 对比。