R使用包地圈计算地球上2个点之间的距离

use*_*622 7 r distance geosphere

我的问题是基于这个问题.使用它我写下面的代码,其中第一组坐标是纽约LGA机场,而第二组坐标是纽约EWR机场.我得到了答案33713.那是英里还是公里?一个快速的谷歌检查说,距离应该是33英里(但它不是直线/弧距离:(这是一个公路的距离).包文件说答案是以米为单位.请澄清.这是一个给出2个坐标找到地球上距离的好方法?我怎样才能在里程中找到答案?

library(geosphere)
distm (c(40.777250, -73.872610), c(40.6895, -74.1745), fun = distHaversine)
         [,1]
[1,] 33713.61
Run Code Online (Sandbox Code Playgroud)

Edw*_*rek 7

是的,它以米为单位给你答案.要转换为里程:

> distm(c(40.777250, -73.872610), c(40.6895, -74.1745), fun = distHaversine)[,1] / 1609
[1] 20.95315
Run Code Online (Sandbox Code Playgroud)

乌鸦飞过20.95英里.