Jeg har et datasett som inneholder en liste over postnummer. Er det en måte i R å konvertere disse postnummerene til bredde- og lengdegradskoordinater?

Kommentarer

  • Latlong.net er et fint sted å få individuelle koordinater for et enkelt postnummer …

Svar

Det er ingen streng algoritmisk sammenheng mellom breddegrad og lengdegrad og postnummer – de er alle tilpassede områder generert av posttjenesten. Du trenger tilgang til et datasett som koder polygoner / polygon sentroider etter postnummer.

1) Kompleks

Tradisjonelt kalles denne oppgaven (kombinert med adressesøk) «Geocoding». Den mest praktiske metoden for full adressesøk er å finne en eksisterende geokoder på nettet, enten av Google Maps, Bing Maps eller ESRI.

2) Enklere

For bare postnummer i USA er det imidlertid data tilgjengelig fra folketellingen:

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

Jeg er ikke kjent med R-geospatiale evner, men alt du trenger er polygon-> centroid- og centroid-> koordinater.

3) Enkleste

Denne oppgaven er vanlig nok til at det eksisterer et allerede eksisterende centroid-datasett: http://coolthingoftheday.blogspot.com/2008/04/free-us-zip-code-database-as-csv.html

Kommentarer

  • Census Bureau-lenken er ødelagt. Det refererte sannsynligvis til ZCTAer som er en oppfinnelse av folketellingen. Opprinnelig basert på postnummer (som IKKE er polygoner og endres regelmessig), er dette polygoner som er ment å være ganske konstante. Dvs. å gjøre dem mer brukbare for demografiske formål.

Svar

har du så på zipcode -pakken ? det er i utgangspunktet en dataramme med ~ 45 000 postnummer sammen med by, stat, breddegrad og lengdegrad.

Svar

Jeg bruker geocode -funksjonen i ggmap -pakken.

Kommentarer

  • vil dette tillate zip + 4 eller bruker det bare zip-sentroider?
  • Det ' bruker Google Maps, så fungerer imidlertid Google. (Bare få et begrenset antall geokoder per dag.)
  • … og tilsynelatende har du ikke ' ikke lov til å lagre dataene (du ' må i utgangspunktet spørre om API hver gang du trenger det)
  • Betyr de at du kan ' t lagre dem for fremtidig geokoding (dvs. lage din egen cache med mappinger), eller at du kan ' t i det hele tatt lagre resultatene? Jeg ' har brukt det til finne forbrytelser i nabolaget mitt og lagre absolutt Lat / Lon for hver forbrytelse f eller fremtidig referanse. Jeg har ikke ' t opprettet en cache som jeg bruker for å unngå Google for fremtidig geokoding.
  • Min lesing av vilkårene (takk for lenken!) Er at de har å gjøre med presentasjon av kart for andre mennesker. Det vil si at du kan ' t lage din egen karttjeneste som bruker Google som en backend og ikke ' t krediterer dem. Det ser ut til at ' ikke har noe direkte å gjøre med geokodingsdata. Skjønt hvem vet i denne tviste tiden …

Svar

Ser ut som om du bruker Ruby on Rails
Prøv denne veiledningen fra Ryan Bates http://railscasts.com/episodes/273-geocoder?view=asciicast
Jeg har prøvd det før, og det fungerer perfekt. Når du skriver inn adresse eller postnummer, vil det vise lengdegrad og breddegrad.

Kommentarer

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

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *