two geographic disthaversine r packages geospatial distance latitude-longitude

disthaversine - geographic distance in r



FunciĆ³n para calcular la distancia geoespacial entre dos puntos(lat, long) usando R (2)

Al cargar el paquete de la geosfera puede usar varias funciones diferentes

library(geosphere) distm(c(lon1, lat1), c(lon2, lat2), fun = distHaversine)

También:

distHaversine() distMeeus() distRhumb() distVincentyEllipsoid() distVincentySphere()

...

Tengo puntos geocodificados en formato largo, lat, y quiero calcular la distancia entre ellos usando R. Esto parece bastante sencillo, pero no puedo encontrar una función que lo haga fácilmente. He estado intentando hacerlo con el paquete gdistance, pero parece muy complicado y orientado a la gráfica, solo necesito un número. Algo parecido a distanceBetween(pointA,pointB) que devuelve un número.

ACTUALIZACIÓN: Esta pregunta es específica de R, el posible duplicado es más general. Aunque hay una respuesta específica de R, está enterrada en otras 28 respuestas.


De acuerdo con @PereG en la respuesta anterior, pero piense que el orden de latitud y longitud es al revés: lon, lat. Esto afectará sus resultados para la matriz de distancia. Así que lo correcto es:

library(geosphere) distm (c(lon1, lat1), c(lon2, lat2), fun = distHaversine)

Fuente: ftp://cran.r-project.org/pub/R/web/packages/geosphere/geosphere.pdf