4

Rにデータフレームの緯度と経度のポイントがあります。Rデータサイエンスツールキットを使用して、これらのポイントを国/州/郡/市/構成/近隣に割り当てることができます。これは便利です。

これらのポイントをRまたはPythonの5桁の郵便番号(または9桁の郵便番号!)に割り当てたいと思います。これを行う簡単な方法はありますか?

編集:郵便番号の境界を含むファイルを見つけました。残念ながら、これは.lpkファイルです。これをRにインポートするにはどうすればよいですか?
編集2:作業しやすいシェープファイルを見つけました。

4

2 に答える 2

5
  1. 郵便番号のシェープファイルをどこかで見つけます(.shp形式、ArcGISシェープファイルと呼ばれることもあります)。

  2. maptoolsパッケージのreadShapePoly コマンドを使用してRにロードします。

  3. ポイントを保持するSpatialPointsDataFrameを作成します。

  4. 予測が正しいことを確認してください。

  5. spパッケージのコマンドを使用してoverlay、ポイントをポリゴンにオーバーレイします。

cleanLatLontaRifxパッケージに役立つことがあります。

于 2011-08-02T14:05:58.547 に答える
3

gsk3を組み合わせて実行したところ、魅力のように機能しました。これが特定のコードです。参照用に、latlongデータフレームのstrも含めました。

> # Shape files found here by state: http://www.census.gov/geo/www/cob/z52000.html#shp
> 
> library(maptools)
> library(maps)
> 
> zip.map <- readShapePoly("zt48_d00.shp")
> latlong <- read.csv("latlong.csv")
> str(latlong)
'data.frame':   2102 obs. of  3 variables:
 $ ref : Factor w/ 1594 levels ...
 $ lat : num  32.9 32.9 32.9 32.9 32.9 ...
 $ long: num  -96.7 -96.7 -96.7 -96.7 -96.7 ...
> coordinates(latlong) = ~long+lat
> write.csv(cbind(latlong, overlay(zip.map,latlong)),"zip.match.csv" )
于 2011-12-31T18:31:04.203 に答える