2011-02-17 6 views
5

EDIT: Y el paquete de no distancia geográfica entre dos puntos lan-largo, pero la distancia en coche o en el pie (como esto http://code.google.com/intl/sk/apis/maps/documentation/directions/) El modo de viaje - conduciendo, caminando. Sin mapa, solo distancia. Gracias por cualquier ideapaquete para geocodificación (nombre de la calle!) Y el cálculo siguiente de la distancia


Hola. Busco el paquete en R, lo que me da longitud y latitud para el marco de datos con 10000 ubicaciones como esta "CALLE, ciudad, Europa".

Y luego el paquete, lo que me da la distancia por fórmula haversine para esas ubicaciones. Pero principalmente paquete para lat-long ... La distancia debería ser fácil.

He buscado mucho pero no encontré nada útil para mí. ¡Gracias por la ayuda! Espero que R lo sepa :)

+1

Oh que tanto necesitamos una interfaz R a esta API: http: // abierta. mapquestapi.com/nominatim/ – Spacedman

+0

Finalmente R no defraudó;) – parenthesis

+0

MapQuest tiene una API de búsqueda de ruta y distancia de conducción/caminata: http://open.mapquestapi.com/directions/ en base a datos de OSM. – Spacedman

Respuesta

3

El paquete dismo tiene el nivel de dirección geocode(), aunque la instalación puede ser difícil en algunas plataformas.

El paquete sp tiene una distancia elipsoidal WGS84 en spDistsN1().

+0

¡Perfecto! R es genial! – parenthesis

+0

El paquete 'dismo' es perfecto para recuperar latitud y longitud para direcciones de calles, etc. – andrewj

2

Obtener ubicaciones en la calle va a necesitar la ayuda de Google o similar. O, posiblemente, OpenStreetMap, pero no estoy seguro de lo que la API es:

http://nominatim.openstreetmap.org/

Por sólo ciudades, búsquedas en la base de geonames lugares poblados usando mi geonames paquete:

>library(geonames) 

> GNsearch(q="Toronto",fcode="PPLA") 
    countryName adminCode1   fclName countryCode  lng 
1  Canada   08 city, village,...   CA -79.4163 
             fcodeName toponymName fcl name fcode 
1 seat of a first-order administrative division  Toronto P Toronto PPLA 
    geonameId  lat adminName1 population 
1 6167865 43.70011 Ontario 4612191 
0

Usted podría intentar recorriendo su dirección usando el método this.

O salga de R y aproveche el geopy de Python.

+0

Gracias por la geopia. Sería mi segunda opción. – parenthesis

1

Consulte el paquete 'geosphere' para conocer las distancias entre los puntos lon/lat.

'gdistance' hace cosas como cost-distance (en cuadrículas).

Para distancias a lo largo de las carreteras, etc. Tal vez se puede utilizar igraph

2

Usted puede usar la función 'mapdist' en el paquete 'ggmap'

Cuestiones relacionadas