Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Assign lat/long to zip codes

I have a dataframe latitude and longitude points in R. Using the R data science toolkit, I can assign these points to Country/State/County/City/Constituency/Neighborhood, which is useful.

I'd like to assign these points to 5 digit zip-codes (or even 9 digit zip codes!) in R or python. Is there an easy way to do this?

Edit: I found a file that contains zip code boundaries. Unfortunately, it is a .lpk file. How do I import this into R?
Edit 2: I found a shape file, which will be easier to work with.

like image 258
Zach Avatar asked Feb 23 '23 09:02

Zach


1 Answers

  1. Find a zip code shapefile somewhere (.shp format, sometimes called ArcGIS Shapefiles).

  2. Load it into R using the maptools package's readShapePoly command.

  3. Create a SpatialPointsDataFrame to hold the points.

  4. Make sure your projections are correct.

  5. Use the sp package's overlay command to overlay the points into the polygons.

You may find cleanLatLon in the taRifx package to be helpful.

like image 102
Ari B. Friedman Avatar answered Feb 25 '23 22:02

Ari B. Friedman