Ste*_*eO7 48 packages r distance geospatial latitude-longitude
我有long,lat格式的地理编码点,我想用R计算它们之间的距离.这看起来非常简单,但我找不到一个能够轻松完成的功能.我一直试图用gdistance包来做,但它似乎非常复杂并且面向图形,我只需要一个数字.这样的东西distanceBetween(pointA,pointB)会返回一个数字.
更新:这个问题特定于R,可能的dup更一般.虽然有一个R特定的答案,但它被埋没在其他28个答案中.
Per*_*reG 70
加载geosphere包,您可以使用许多不同的功能
library(geosphere)
distm(c(lon1, lat1), c(lon2, lat2), fun = distHaversine)
Run Code Online (Sandbox Code Playgroud)
也:
distHaversine()
distMeeus()
distRhumb()
distVincentyEllipsoid()
distVincentySphere()
Run Code Online (Sandbox Code Playgroud)
...
Agu*_*aco 15
在上面的回答中同意@PereG,但认为纬度和经度的顺序是相反的:lon,lat.这将影响距离矩阵的结果.所以正确的是:
library(geosphere)
distm (c(lon1, lat1), c(lon2, lat2), fun = distHaversine)
Run Code Online (Sandbox Code Playgroud)
资料来源:ftp://cran.r-project.org/pub/R/web/packages/geosphere/geosphere.pdf
| 归档时间: |
|
| 查看次数: |
72418 次 |
| 最近记录: |