Jai un ensemble de données qui comprend une liste de codes postaux. Y a-t-il un moyen dans R de convertir ces codes postaux en coordonnées de latitude et de longitude?
Commentaires
- Latlong.net est un endroit agréable pour obtenir des informations individuelles coordonnées pour un seul code postal …
Réponse
Il ny a pas de relation algorithmique stricte entre la latitude et longitude et code postal – ce sont toutes des zones personnalisées générées par le service postal. Vous devez accéder à un ensemble de données qui code les polygones / centroïdes de polygones par code postal.
1) Complexe
Traditionnellement, cette tâche (associée à la recherche dadresse) est appelée « Géocodage ». La méthode la plus pratique pour rechercher une adresse complète est de trouver un géocodeur en ligne préexistant, que ce soit par Google Maps, Bing Maps ou ESRI.
2) Plus simple
Pour les codes postaux américains uniquement, cependant, des données sont disponibles à partir du recensement:
http://www.census.gov/geo/www/cob/z52000.html
Je ne suis pas familier avec la capacité géospatiale R, mais tout ce dont vous avez besoin est un polygone-> centroïde et un centroïde-> coordonnées.
3) Le plus simple
Cette tâche est suffisamment courante pour quun ensemble de données centroïde préexistant existe: http://coolthingoftheday.blogspot.com/2008/04/free-us-zip-code-database-as-csv.html
Commentaires
- Le lien du Census Bureau est rompu. Il faisait probablement référence aux ZCTA qui sont une invention du bureau de recensement. Initialement basés sur des codes postaux (qui ne sont PAS des polygones et changent régulièrement), ce sont des polygones qui sont censées être assez constantes. Par exemple, les rendre plus utilisables à des fins démographiques.
Réponse
ont tu as regardé au zipcode
package ? cest essentiellement un dataframe avec ~ 45 000 codes postaux avec leur ville, état, latitude et longitude.
Réponse
Jutilise la fonction geocode
dans le package ggmap
.
Commentaires
- Est-ce que cela autorisera zip + 4 ou nutilisera-t-il que les centres de gravité zip?
- Il ' utilise Google Maps, donc fonctionne comme Google le ferait. (Seulement obtenir un nombre limité de géocodes par jour.)
- … et apparemment, vous nêtes ' pas autorisé à stocker les données (vous ' je dois interroger lAPI chaque fois que vous en avez besoin)
- Signifient-ils que vous ne pouvez ' les stocker pour un géocodage futur (cest-à-dire en créant votre propre cache de mappages), ou que vous pouvez ' t stocker les résultats du tout? Jai ' lai utilisé pour localiser les crimes dans mon quartier et stocker certainement le Lat / Lon de chaque crime f ou référence future. Je nai ' pas créé un cache que jutilise pour éviter Google pour le géocodage futur, cependant.
- Ma lecture du TOS (merci pour le lien!) Est quils ont à voir avec la présentation de cartes à dautres personnes. Autrement dit, vous ne pouvez ' créer votre propre service de carte qui utilise Google comme back-end et qui ne leur ' pas les créditer. Cela ne semble ' avoir rien à voir directement avec les données de géocodage. Mais qui sait en cette ère litigieuse …
Réponse
On dirait que vous utilisez Ruby on Rails
Essayez ce tutoriel de Ryan Bates http://railscasts.com/episodes/273-geocoder?view=asciicast
Je « lai déjà essayé et il fonctionne parfaitement. Lorsque vous tapez une adresse ou un code postal, il affichera la longitude et la latitude.
Commentaires
- Il demande une solution dans R , pas Ruby on Rails.