R中地球上两个地方之间的距离
Distance between two places on earth in R
我正在尝试使用 R 计算地球上两点之间的距离。
library(geosphere)
library(oce)
geodDist(StoreLocations$latitude[c(26)], StoreLocations$longitude[c(26)],
CustomerLocations$latitude[c(5)], CustomerLocations$longitude[c(5)])
将 Lat/Long 放入 google 地图(测量距离特征)。我得到总距离:1.88 公里(1.17 英里),但这不是我使用上面的代码得到的。我正在努力寻找可以帮助我解决这个问题的人。
Store 51.68108210 -0.09732268
Customer 51.66665932 -0.08300349
通过阅读 geosphere
文档,您似乎颠倒了参数顺序。 geoDist
(或 2016 年 6 月 15 日发布的最新版本的包中的 distGeo
)首先需要经度,然后是纬度。你好像先有纬度。
df <- data.frame(long = c(-0.09732268, -0.08300349), lat = c(51.68108210, 51.66665932))
long lat
1 -0.09732268 51.68108
2 -0.08300349 51.66666
distGeo(df[1, ], df[2, ])
1885.795 (1.88 km)
您还应该检查以确保您使用的是最新版本的软件包。
我正在尝试使用 R 计算地球上两点之间的距离。
library(geosphere)
library(oce)
geodDist(StoreLocations$latitude[c(26)], StoreLocations$longitude[c(26)],
CustomerLocations$latitude[c(5)], CustomerLocations$longitude[c(5)])
将 Lat/Long 放入 google 地图(测量距离特征)。我得到总距离:1.88 公里(1.17 英里),但这不是我使用上面的代码得到的。我正在努力寻找可以帮助我解决这个问题的人。
Store 51.68108210 -0.09732268
Customer 51.66665932 -0.08300349
通过阅读 geosphere
文档,您似乎颠倒了参数顺序。 geoDist
(或 2016 年 6 月 15 日发布的最新版本的包中的 distGeo
)首先需要经度,然后是纬度。你好像先有纬度。
df <- data.frame(long = c(-0.09732268, -0.08300349), lat = c(51.68108210, 51.66665932))
long lat
1 -0.09732268 51.68108
2 -0.08300349 51.66666
distGeo(df[1, ], df[2, ])
1885.795 (1.88 km)
您还应该检查以确保您使用的是最新版本的软件包。