郵便番号のリストを使用していますが、米国の複数の州または米国にマップされている郵便番号の数(またはどれ)を知りたいのですが。市?
たとえば、郵便番号42223
は、KY-TN州の境界線にまたがる米国陸軍のフォートキャンベルに解決されることを知っています。奇妙なことに、googleAPIのみその郵便番号に対応するその州のTN
を返します。
コメント
回答
13の複数州の米国国勢調査 “郵便番号集計エリア(ZCTA)があります。 02861、42223、59221、63673、71749、73949、81137、84536、86044、86515、88063、89439 & 97635。
他の人が言及しているように、郵便番号でカバーされる領域を把握するためのいくつかの異なる方法がありますが、ZCTAが最も簡単であり、o私が知っているnly公式バージョン。
つまり、42223の例は州境にまたがっていますが、実際にはメリーランド州とバージニア州の間のようです。ケンタッキー州とテネシー州の間です。
状態の完全なリストは次のとおりです。
02861 Massachusetts 02861 Rhode Island 42223 Kentucky 42223 Tennessee 59221 Montana 59221 North Dakota 63673 Illinois 63673 Missouri 71749 Arkansas 71749 Louisiana 73949 Oklahoma 73949 Texas 81137 Colorado 81137 New Mexico 84536 Arizona 84536 Utah 86044 Arizona 86044 Utah 86515 Arizona 86515 New Mexico 88063 New Mexico 88063 Texas 89439 California 89439 Nevada 97635 California 97635 Oregon
これが(PythonのPandasを使用して)生成した方法です:
import pandas as pd zcta_to_place_url = "http://www2.census.gov/geo/docs/maps-data/data/rel/zcta_place_rel_10.txt" # load relevant data df = pd.read_csv( zcta_to_place_url, dtype={"ZCTA5": str}, usecols=["ZCTA5", "STATE"]) # the data often repeats the same (ZCTA, state) pair. Remove these df = df.drop_duplicates() # get number of times each ZCTA appears (most are only 1) counts = df["ZCTA5"].value_counts() # get those listed more than once multi_state_zips = df[df.ZCTA5.isin(counts[counts > 1].index)] # the census uses numeric state codes # replace these with state names census_codes_to_names_url = "http://www2.census.gov/geo/docs/reference/state.txt" states = pd.read_csv(census_codes_to_names_url, sep="|") merged = pd.merge( multi_state_zips, states, on="STATE" )[["ZCTA5", "STATE_NAME"]] print merged.sort(["ZCTA5", "STATE_NAME"]).to_string(index=False)
編集:国勢調査には州の2つの異なる2桁のコーディングがあるようです。どちらも州のアルファベット順に基づいて割り当てられた番号ですが、 1から51までの番号を直接適用しているようです(50州+ DC)、他の番号は一部スキップします。最初の番号を使用していましたが、2番目の番号を使用する必要があったため、リストした州名が間違っていました。コードと結果を正しいリストで表示します。
編集:OpenCongress APIによって確認された新しい状態マッピング: https://gist.github.com/gabrielgrant/89f883d093e2abf129ad
コメント
- この@JesseCrockerをキャッチしてくれてありがとう-国勢調査のようです(紛らわしい)州には2つの異なる2桁のコーディングがあります。どちらも州のアルファベット順’に基づいて割り当てられた番号ですが、 1から51までの番号を直接適用しているようです(50状態+ DC)、他はいくつかの数字をスキップします。私は最初のものを使用していましたが、2番目のものを使用する必要があったため、リストした州名が間違っていました(ZCTAは良好でしたが)。 ‘正しいリストでコードと結果を修正しました。
- FIPSコードのギャップに関して、スキップされた番号は1970年代に周辺地域用に予約されていました。 (米領サモア、運河地帯、グアム、プエルトリコ、ヴァージン諸島)、しかしその後’それらに使用されることはありませんでした。 en.wikipedia.org/wiki/ …
- ドン’ 3つの州6、郡、および複数の都市にまたがる郵便番号57717を忘れないでください:57717オーロラ、SD 57717ビュート、SD 57717カーター、MT 57717クルック、ワイオミング57717ハーディング、SD 57717ローレンス、サウスダコタ
- このリストは’ほぼ完成していません。 はるかにより良い近似については私の答えをチェックしてください。 gis.stackexchange.com/a/223445/6052
- その’は奇妙です。 Googleマップでは、
02861
が文字通りMAとRIの境界の一部を形成し、郵便番号全体がRIにしっかりと表示されています google.com/ maps / place / Pawtucket、+ RI + 02861 / …
回答
これを伝える方法は実際にはありません。USPSによって定義されたZipCode境界形状がないため。ZipCodesは、配達された通りの境界ボックスによって定義されます。
したがって、USPS AISデータを取得し、郵便番号で特定の郵便局から配達される道路を抽出してから、これらの道路グリッドに参加する必要があります。これが、すべての商用ベンダーは(Nokia / TomTom)、郵便番号の境界を示すために使用するPsuedoシェイプを作成します。
この不正確なプロセスが、USPSが空間データを提供しない理由です。
コメント
- 何か正確ですか?真実とは何ですか?たくさんありますzip境界レイヤーが作成されました。これは、要件が不明なため、この特定の分析の目的に役立つ場合とそうでない場合があります。 Esriの無料zip境界- arcgis.com/home/item.html?id=8d2012a2016e484dafaac0451f9aea24 gisも参照.stackexchange。com / questions / 2682 / …
- 与えられていますが、使用するデータの意味を理解する必要もあります。
回答
米国国勢調査局は、郵便番号に含まれる住所に基づいて、ZIPと呼ばれる郵便番号のおおよその境界を導き出します。コード集計エリア(ZCTA)。
ZCTAが他のさまざまな地域にどのようにマッピングされるかを説明する関係ファイルを公開します。 ZCTA to Place 関係ファイルを調べると、それらが都市や町にどのようにマッピングされているかがわかります。 ZCTAから郡の関係ファイルから州にどのようにマッピングされるかを推測できます。
関係ファイルは国勢調査の地理IDを使用するため、」 ガゼッターファイルを取得して、数値IDを「期待する場所または郡名」に変換できるようにします。
その他回答によると、郵便番号から場所へのマッピングはおおよその可能性がありますが、私は国勢調査データファイルに幸運をもたらしました。
回答
2016年のTIGERデータとPostGIS
特別な注意点として、ZCTAデータはUSPSの郵便番号ではありません。 USPSの郵便番号は本当に恐ろしく、概算する以外は役に立ちません。USPS以外のすべての政府機関を含むすべての人、および(ZCTAを作成するための国勢調査)はそれらを完全に無視します。USPSが成長したい場合少しだけ、最新のZCTAに変換して、信頼できるGISポリゴンを提供するだけです。
- 2016 TIGER ZCTA 877MBのテーブルデータ。
- 33,144 ZCTA
- 合計52,669,641ポイント、
- 2016TIGER状態 15MBのテーブルデータ。
- 56の「州」
- 合計912,464ポイント
次に…ここでは、 TIGERStateおよびTIGERZCTAデータセット。 ZCTAの総面積の1%で州を認定することに注意してください。 ZCTA領域の1%が状態にない場合は、丸め誤差、または国勢調査で誰かが何かを太く指で触れていると見なされます。 56168
または83832
で、この追加された選択性でプルーニングしている郵便番号を確認してください。
SELECT zcta5ce10, array_agg(state.name ORDER BY state.name) AS states FROM census.state AS state JOIN census.zcta AS zcta ON ( ST_Intersects(state.geog::geometry, zcta.geog::geometry) AND NOT ST_Touches(state.geog::geometry, zcta.geog::geometry) AND ST_Area(ST_Intersection(state.geog, zcta.geog)) > (ST_Area(zcta.geog)*0.01) ) GROUP BY zcta.zcta5ce10 HAVING count(*) > 1 ORDER BY zcta5ce10;
これが結果です
zcta5ce10 | states -----------+--------------------------------- 03579 | {Maine,"New Hampshire"} 20135 | {Virginia,"West Virginia"} 24604 | {Virginia,"West Virginia"} 31905 | {Alabama,Georgia} 38079 | {Kentucky,Tennessee} 38769 | {Arkansas,Mississippi} 38852 | {Alabama,Mississippi} 42223 | {Kentucky,Tennessee} 51001 | {Iowa,"South Dakota"} 51023 | {Iowa,"South Dakota"} 51360 | {Iowa,Minnesota} 51557 | {Iowa,Nebraska} 51640 | {Iowa,Missouri} 52542 | {Iowa,Missouri} 52573 | {Iowa,Missouri} 52626 | {Iowa,Missouri} 54554 | {Michigan,Wisconsin} 56027 | {Iowa,Minnesota} 56144 | {Minnesota,"South Dakota"} 56164 | {Minnesota,"South Dakota"} 56219 | {Minnesota,"South Dakota"} 56744 | {Minnesota,"North Dakota"} 57026 | {Minnesota,"South Dakota"} 57030 | {Minnesota,"South Dakota"} 57068 | {Minnesota,"South Dakota"} 57078 | {Nebraska,"South Dakota"} 57638 | {"North Dakota","South Dakota"} 57641 | {"North Dakota","South Dakota"} 57642 | {"North Dakota","South Dakota"} 57645 | {"North Dakota","South Dakota"} 57648 | {"North Dakota","South Dakota"} 57660 | {"North Dakota","South Dakota"} 57717 | {"South Dakota",Wyoming} 57724 | {Montana,"South Dakota"} 58225 | {Minnesota,"North Dakota"} 58439 | {"North Dakota","South Dakota"} 58623 | {"North Dakota","South Dakota"} 58649 | {"North Dakota","South Dakota"} 58653 | {"North Dakota","South Dakota"} 59221 | {Montana,"North Dakota"} 59270 | {Montana,"North Dakota"} 59275 | {Montana,"North Dakota"} 59847 | {Idaho,Montana} 63673 | {Illinois,Missouri} 65729 | {Arkansas,Missouri} 65733 | {Arkansas,Missouri} 65761 | {Arkansas,Missouri} 66541 | {Kansas,Nebraska} 67950 | {Kansas,Oklahoma} 68325 | {Kansas,Nebraska} 68719 | {Nebraska,"South Dakota"} 68978 | {Kansas,Nebraska} 69201 | {Nebraska,"South Dakota"} 69212 | {Nebraska,"South Dakota"} 69216 | {Nebraska,"South Dakota"} 71749 | {Arkansas,Louisiana} 72338 | {Arkansas,Tennessee} 72644 | {Arkansas,Missouri} 73949 | {Oklahoma,Texas} 75556 | {Arkansas,Texas} 79837 | {"New Mexico",Texas} 80758 | {Colorado,Nebraska} 81137 | {Colorado,"New Mexico"} 81324 | {Colorado,Utah} 82063 | {Colorado,Wyoming} 82082 | {Nebraska,Wyoming} 82701 | {"South Dakota",Wyoming} 82801 | {Montana,Wyoming} 82930 | {Utah,Wyoming} 83111 | {Idaho,Wyoming} 83120 | {Idaho,Wyoming} 83312 | {Idaho,Utah} 83342 | {Idaho,Utah} 84034 | {Nevada,Utah} 84531 | {Arizona,Utah} 84536 | {Arizona,Utah} 86044 | {Arizona,Utah} 86504 | {Arizona,"New Mexico"} 86514 | {Arizona,Utah} 86515 | {Arizona,"New Mexico"} 87328 | {Arizona,"New Mexico"} 88220 | {"New Mexico",Texas} 88430 | {"New Mexico",Texas} 89010 | {California,Nevada} 89019 | {California,Nevada} 89060 | {California,Nevada} 89421 | {Nevada,Oregon} 89439 | {California,Nevada} 89832 | {Idaho,Nevada} 97635 | {California,Oregon} 97910 | {Idaho,Oregon} 99128 | {Idaho,Washington} 99362 | {Oregon,Washington} (93 rows)
これらすべてをGoogleマップでスポットチェックできるはずです。ただし、 Googleマップも 信頼できません。
回答
1994年の国勢調査文書で言及されている州の重複
1994年6月、次の米国国勢調査局のサイトによると、州の境界を越える153の郵便番号があります。
前述のように、州の境界を越えて配信される郵便番号がいくつかあり、郡の境界を越えて配信される郵便番号がいくつかあります。複数の州に153の郵便番号があります。複数の郡に9,000の郵便番号があります。11,331(合計857,400のうち)の郵便番号/セクターがありました。それはsplでした郡ごとに。すべての州にはいくつかの分割セクターがあり、バージニア州、ミシガン州、オハイオ州の投与量が特に多かった。地方のルートセクターは、予想通り、分割セクターの大部分を(比較的)含んでいました。他のほとんどのケースは、より低いセクター範囲(私書箱用に予約済み)とセクター99(郵便局長とビジネス用に予約済み)にあります。これらの選択されたケースでは、非標準の郡コードの割り当てが発生している必要があります。後日、これらをさらに調査する必要があります。
回答
ArcGISでは、空間結合ツール(またはスクリプト内)を使用して、どの郵便番号ポリゴンが複数の状態ポリゴンと交差するかを見つけることができます。出力フィーチャクラスには、複数の州を示すJoin_Countフィールドがあります。zipと都市でも同様のことができます。境界線の不正確さ/不足または不足のためにzipが意図せずに複数重複する誤検知が発生する可能性があります。解像度。空間結合の前に、zipの負の-100mバッファを実行する可能性があります。
import arcpy target_features = "C:/data/usa.gdb/states" join_features = "C:/data/usa.gdb/zips" out_feature_class = "C:/data/usa.gdb/states_zips" arcpy.SpatialJoin_analysis(target_features, join_features, out_feature_class, "JOIN_ONE_TO_MANY")
http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/Spatial_Join/00080000000q000000/
“2つの新しいフィールド、Join_CountとTARGET_FIDは、常に出力フィーチャクラスに追加されます。 Join_Countは、各ターゲット機能(TARGET_FID)に一致する結合機能の数を示します。結合操作パラメーターでJOIN_ONE_TO_MANYが指定されている場合、別の新しいフィールドJOIN_FIDが出力に追加されます。”
回答
PostGISで空間交差を実行し、すべての州または市と郵便番号のリストを取得できます。それらが交差すると、複数の州が交差する場所に複数の郵便番号が返され、同じ郵便番号と交差した各都市についても、その結果が表示されます。
コメント
回答
ペンシルベニアでは、郵便番号の境界が市の境界と一致していません。一部のタウンシップでは、複数の郵便局が配達されている場合があります。911アドレス指定を行っていたときに、一部のタウンシップはPOにnaeの変更を依頼しました。タウンシップ名に対して、POは、古い郵便番号を引き続き使用するという条件でこれを行うことを許可しました。多くの人がこれを行いました。これらのリンクから、同じ郵便番号がいくつかの町で使用されていることがわかります。 https://suburbanstats.org/zip-codes/pennsylvania/thornhurst https://suburbanstats.org/zip-codes/pennsylvania/scott-twp 基本的に、正しい郵便番号で「Anytown」を使用すると、並べ替えコンピュータがzipを読み取るために機能します。最初にコードを入力します。
私書箱しかなく、ローカル配信を行わないため、マップのポリゴンがないPOに遭遇することもあります。これらのPOは通常小さいです。
city “、および”郵便番号”?