我正在使用geosphere包中的函数distVincentyEllipsoid()来计算世界港口之间的距离。此函数将两个地方的经度和纬度作为输入,并以米为单位给出距离作为输出。它似乎总体上运行良好,但在某些情况下,它一直在无缘无故地给我 NA。我想知道是否有人知道错误(没有在线文档我可以找到解决此问题的文档),或者可能会指出我做错了什么。奇怪的是,它似乎只影响特定的配对——例如。f(a,b) 和 f(b,a) 会给出 NA,但 f(a,c) 和 f(b,c) 不会。
例如。新西兰旺格雷 (Lon:174.35 Lat:-35.76) 到直布罗陀直布罗陀 (Lon: -5.35 Lat:36.13):
distVincentyEllipsoid(c(174.35,-35.76),c(-5.35,36.13))
> NA
...但:
马耳他瓦莱塔(经度:14.51 纬度:35.89)至直布罗陀直布罗陀(经度:-5.35 纬度:36.13):
distVincentyEllipsoid(c(14.51,35.89),c(-5.35,36.13))
> 1787499
...和:
新西兰旺格雷 (Lon:174.35 Lat:-35.76) 至马耳他瓦莱塔 (Lon:14.51 Lat:35.89):
distVincentyEllipsoid(c(174.35,-35.76),c(14.51,35.89))
> 18207301
(根据谷歌地图,这两个输出都是正确的 - 请注意这些值以米为单位。)
任何帮助将不胜感激。
编辑:问题已解决——Vincenty 的距离方法对近对映点失败。