概要
住所テーブルをジオコーディングします。この処理にはジオコーディングしたい住所を格納するテーブルと、住所ロケーターまたはコンポジット住所ロケーターが必須です。このツールはロケーターに対して住所を照合し、各入力レコードの処理結果を新しいポイント フィーチャクラスに保存します。ArcGIS World Geocoding Service を使用している場合、この操作でクレジットが消費されることがあります。
ArcGIS World Geocoding Service を使用してジオコーディング操作を行うには、ArcGIS Online の組織のサブスクリプションが必要であり、クレジットを消費します。組織アカウントには、ジオコーディング リクエスト全体を実行するのに十分なクレジットが必要です。
使用法
単一のフィールドに格納されている住所または複数のフィールドに分割されている住所をジオコーディングすることができます。単一の入力フィーチャには、完全な住所が格納されています。たとえば、「303 Peachtree St NE, Atlanta, GA 30308」のようになります。入力住所が、米国の一般的な住所に使用される Address、City、State、および ZIP などの複数のフィールドに分割されている場合、複数のフィールドがサポートされます。
一部のロケーターは、複数の入力住所フィールド (Address、Address2、Address3 など) をサポートしています。この場合、住所コンポーネントは複数のフィールドに分割可能で、これらの住所フィールドはジオコーディング時に連結されます。たとえば、3 つのフィールドに 100、Main st、Apt 140 がある場合や、2 つのフィールドに 100 Main st と Apt 140 がある場合、ジオコーディングのときは、どちらも 100 Main st Apt 140 になります。
出力フィーチャクラスは住所ロケーターと同じ空間参照内に保存されます。出力フィーチャクラスの空間参照を変更するには、ツールの環境設定で異なる出力座標系を設定します。
出力フィーチャクラスは、各レコードの入力アドレスおよびその他の情報 (スコア、ステータス、照合された住所など) をデフォルトで格納します。住所の再照合を行うには、[住所の再照合 (Rematch Addresses)] ツールを使用するか、または [住所の再照合] ウィンドウを開き [住所の再照合] オプションを使用します。一度、照合処理が終了しフィーチャクラスが作成されると、入力アドレス テーブル内の住所の変更は出力フィーチャクラスの結果には反映されません。
ArcGIS World Geocoding Service を使用して住所のテーブルを照合するには、ArcGIS Online for organizations サブスクリプションが必要です。
構文
arcpy.geocoding.GeocodeAddresses(in_table, address_locator, in_address_fields, out_feature_class, {out_relationship_type}, {country}, {location_type}, {category}, {output_fields})
パラメーター | 説明 | データ タイプ |
in_table | ジオコーディングする住所テーブル。 | Table View |
address_locator | 住所テーブルのジオコーディングに使用する住所ロケーター。 メモ:必要に応じて、ロケーター パスの末尾にあるロケーター名の後に *.loc 拡張子を付けます。 | Address Locator |
in_address_fields [input_address_field, table_field_name] | input_address_field が住所ロケーターで指定された入力住所フィールドの名前で、table_field_name がジオコーディングする住所のテーブルで対応するフィールドの名前である場合、このパラメーターでマッピングしている各フィールドの形式は、input_address_field, table_field_name となります。 「303 Peachtree St NE, Atlanta GA 30308」のような完全な住所を保存する、単一入力フィールドを指定できます。また、入力住所が、米国の一般的な住所に使用される Address、City、State、ZIP などの複数のフィールドに分割されている場合は、複数のフィールドを指定することもできます。 一部のロケーターは、複数の入力住所フィールド (Address、Address2、Address3 など) をサポートしています。この場合、住所コンポーネントは複数のフィールドに分割可能で、これらの住所フィールドはジオコーディング時に連結されます。たとえば、3 つのフィールドに 100、Main st、Apt 140 がある場合や、2 つのフィールドに 100 Main st と Apt 140 がある場合、ジオコーディングのときは、どちらも 100 Main st Apt 140 になります。 住所ロケーターで使用されるオプションの入力住所フィールドを入力アドレス テーブル内のフィールドにマッピングしないことを選択する場合、フィールド名の代わりに <None> を使用してマッピングしないことを示します。 | Field Info |
out_feature_class | ジオコーディングされた出力フィーチャクラスまたはシェープファイル。 | Feature Class |
out_relationship_type (オプション) | レガシー:このパラメーターは、ArcGIS Pro では効果がありません。ArcGIS Desktop との下位互換性をサポートするために残されています。 ArcGIS Pro で使用できる値は STATIC のみです。
| Boolean |
country [country,...] (オプション) | これは「国」パラメーターに対応したロケーターを対象とするもので、ジオコーディングを特定の国々に制限する働きがあります。国を選択すれば、多くの場合、ジオコーディングの精度が向上します。[入力テーブル] の国を表すフィールドが、Country フィールドの [入力住所フィールド] にマップされる場合、[入力テーブル] の値の方が、[国] パラメーターよりも優先されます。 これは、選択した国またはエリアに制限されます。国を指定しないと、ロケーターでサポートされているすべての国に対してジオコーディングが実行されます。入力値は ISO 3166-1 の国コード (3 文字) で指定してください。 すべてのロケーターが [国] に対応しているわけではありません。 | String |
location_type (オプション) | POINT_ADDRESS の照合の望ましい出力ジオメトリを指定します。このパラメーターのオプションは、ルート検索に使用できる道路脇の位置を表す [ROUTING_LOCATION] または屋上、住所のパーセルの重心、玄関を表す [ADDRESS_LOCATION] です。優先位置がデータに存在しない場合は、代わりに ROUTING_LOCATION のデフォルト位置が返されます。Addr_type = PointAddress のジオコード結果の場合、x および y 属性値は道路に沿った住所の座標を記述し、DisplayX および DisplayY の値は屋上または建物の重心の座標を記述します。reverseGeocode の [位置情報] パラメーターの詳細については、REST API Web ヘルプをご参照ください。 このパラメーターは、すべてのロケーターではサポートされていません。
| String |
category [category,...] (オプション) | ロケーターが検索する場所のタイプを制限します。これにより、誤判定の一致が除外されるため、検索処理の速度が上がる可能性があります。カテゴリを指定しないと、サポートされているすべてのカテゴリに対してジオコーディングが実行されます。すべてのカテゴリ値がすべての場所と国でサポートされているとは限りません。通常、このパラメーターは次の目的に使用できます。
このパラメーターは、すべてのロケーターではサポートされていません。 カテゴリ フィルタリングの詳細については、REST API Web ヘルプをご参照ください。 | String |
output_fields (オプション) | ジオコード結果で返されるロケーター出力フィールドを指定します。 メモ:このパラメーターは、ディスクに格納されているか、Enterprise 10.9 以降に公開されている [ロケーターの作成 (Create Locator)] ツールまたは [フィーチャ ロケーターの作成 (Create Feature Locator)] ツールを使用して作成された入力ロケーターで使用できます。[住所ロケーターの作成 (Create Address Locator)] ツールを使用して作成されたロケーターが 1 つ以上含まれているコンポジット ロケーターでは、このパラメーターを使用できません。
| String |
コードのサンプル
次の Python ウィンドウ スクリプトで GeocodeAddresses 関数を使用して、ローカル ロケーターを使用した住所テーブルをジオコーディングする方法を示します。
import arcpy
arcpy.env.workspace = "C:\ArcTutor\Geocoding\atlanta"
# Set local variables
address_table = "customers.dbf"
address_locator = "Atlanta_AddressLocator"
address_fields = ("\'Address or Place\' Address VISIBLE NONE;Address2 <None> VISIBLE NONE;Address3 <None> VISIBLE NONE;" +
"Neighborhood <None> VISIBLE NONE;City <None> VISIBLE NONE;County <None> VISIBLE NONE;" +
"State <None> VISIBLE NONE;ZIP ZIP <None> VISIBLE NONE;ZIP4 <None> VISIBLE NONE;" +
"Country <None> VISIBLE NONE")
geocode_result = "geocode_result.shp"
arcpy.GeocodeAddresses_geocoding(address_table, address_locator,
address_fields, geocode_result,
'STATIC')
次の Python ウィンドウ スクリプトで GeocodeAddresses 関数を使用して、AGS 接続を介するサーバー ロケーターを使用した住所テーブルをジオコーディングする方法を示します。
import arcpy
# Set local variables:
address_table = r"C:\data\Atlanta.gdb\customers"
address_locator = r"C:\ags_connections\server_name.ags\Atlanta.GeocodeServer"
address_fields = "'Single Line Input' SingleLine VISIBLE NONE"
geocode_result = r"C:\outputs\geocode_result.shp"
arcpy.GeocodeAddresses_geocoding(address_table, address_locator,
address_fields, geocode_result,
'STATIC')
次の Python ウィンドウ スクリプトで GeocodeAddresses 関数を使用して、ポータル ロケーターを使用した住所テーブルをジオコーディングする方法を示します。
import arcpy
arcpy.SignInToPortal("https://machinename.domain.com/portal", "username", "password")
# Set local variables
address_table = r"C:\data\Atlanta.gdb\customers"
address_locator = "https://machinename.domain.com/server/rest/services/service_name/GeocodeServer/portal_item_name"
address_fields = ("\'Address or Place\' Address VISIBLE NONE;Address2 <None> VISIBLE NONE;Address3 <None> VISIBLE NONE;" +
"Neighborhood <None> VISIBLE NONE;City <None> VISIBLE NONE;County <None> VISIBLE NONE;" +
"State <None> VISIBLE NONE;ZIP ZIP <None> VISIBLE NONE;ZIP4 <None> VISIBLE NONE;" +
"Country <None> VISIBLE NONE")
geocode_result = r"C:\outputs\geocode_result.shp"
arcpy.GeocodeAddresses_geocoding(address_table, address_locator,
address_fields, geocode_result,
'STATIC')
次の Python ウィンドウ スクリプトでは、GeocodeAddresses 関数を使用して、World Geocoding Service で住所テーブルをジオコーディングする方法を示します。
import arcpy
arcpy.SignInToPortal("https://www.arcgis.com/", username='username', password='password')
# Set local variables
address_table = r"C:\data\Addresses.csv"
# Using the World Geocoding Service charges credits to the signed in account
address_locator = "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/ArcGIS World Geocoding Service"
field_map = ("\'Address or Place\' Address VISIBLE NONE;Address2 <None> VISIBLE NONE;Address3 <None> VISIBLE NONE;" +
"Neighborhood <None> VISIBLE NONE;City <None> VISIBLE NONE;Subregion <None> VISIBLE NONE;" +
"Region <None> VISIBLE NONE;ZIP ZIP <None> VISIBLE NONE;ZIP4 <None> VISIBLE NONE;" +
"Country <None> VISIBLE NONE")
geocode_result = r"C:\outputs\geocode_result.shp"
arcpy.GeocodeAddresses_geocoding(address_table, address_locator,
address_fields, geocode_result,
'STATIC')
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい