Jeg har et datasæt, der indeholder en liste over postnumre. Er der en måde i R at konvertere disse postnumre til bredde- og længdegradskoordinater?

Kommentarer

  • Latlong.net er et rart sted at få individuel koordinater til et enkelt postnummer …

Svar

Der er ingen streng algoritmisk sammenhæng mellem breddegrad og længdegrad og postnummer – de er alle brugerdefinerede områder genereret af posttjenesten. Du har brug for adgang til et datasæt, der koder polygoner / polygoncentroider efter postnummer.

1) Kompleks

Traditionelt kaldes denne opgave (kombineret med adressesøgning) “Geocoding”. Den mest bekvemme metode til fuld adressesøgning er at finde en allerede eksisterende online geokoder, uanset om det er af Google Maps, Bing Maps eller ESRI.

2) Enklere

For kun amerikanske postnumre er der dog data tilgængelige fra folketællingen:

http://www.census.gov/geo/www/cob/z52000.html

Jeg kender ikke R geospatial kapacitet, men alt hvad du behøver er polygon-> centroid- og centroid-> koordinater.

3) Enkleste

Denne opgave er almindelig nok til, at der findes et allerede eksisterende centroid-datasæt: http://coolthingoftheday.blogspot.com/2008/04/free-us-zip-code-database-as-csv.html

Kommentarer

  • Census Bureau-linket er brudt. Det henvises sandsynligvis til ZCTAer, som er en opfindelse af folketællingsbureauet. Oprindeligt baseret på postnumre (som IKKE er polygoner og regelmæssigt ændres) disse er polygoner der er beregnet til at være temmelig konstante. Dvs. at gøre dem mere anvendelige til demografiske formål.

Svar

har du kiggede ved zipcode pakke ? det er dybest set en dataramme med ~ 45.000 postnumre sammen med deres by, stat, breddegrad og længdegrad.

Svar

Jeg bruger geocode -funktionen i ggmap -pakken.

Kommentarer

  • tillader dette zip + 4, eller bruger det kun zip-centroider?
  • Det ' bruger Google Maps, så fungerer det dog, hvordan Google ville. (Kun få et begrænset antal geokoder pr. dag.)
  • … og tilsyneladende har du ' ikke lov til at gemme dataene (du ' skal grundlæggende spørge APIen om hver gang du har brug for det)
  • Betyder de, at du kan ' ikke gemme dem til fremtidig geokodning (dvs. oprette din egen cache med tilknytninger), eller at du slet ikke kan ' gemme resultaterne? Jeg ' har brugt det til lokaliser forbrydelser i mit nabolag og opbevar bestemt Lat / Lon for hver forbrydelse f eller fremtidig reference. Jeg har ikke ' t oprettet en cache, som jeg dog bruger for at undgå Google til fremtidig geokodning.
  • Min læsning af TOS (tak for linket!) Er at de har at gøre med præsentationen af kort til andre mennesker. Det vil sige, du kan ' t lave din egen korttjeneste, der bruger Google som en back-end og ikke ' t krediterer dem. Det ser ikke ud til ' at have noget direkte at gøre med geokodningsdata. Skønt hvem ved i denne tviste æra …

Svar

Ser ud som om du bruger Ruby on Rails
Prøv denne tutorial fra Ryan Bates http://railscasts.com/episodes/273-geocoder?view=asciicast
Jeg har prøvet det før, og det fungerer perfekt. Når du skriver adresse eller postnummer, vil det vise længde- og breddegrad.

Kommentarer

  • Han beder om en løsning i R , ikke Ruby on Rails.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *