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.