住所のジオコーディング (Geocode Addresses) (ジオコーティング)

概要

住所テーブルをジオコーディングします。この処理にはジオコーディングしたい住所を格納するテーブルと、住所ロケーターまたはコンポジット住所ロケーターが必須です。このツールはロケーターに対して住所を照合し、各入力レコードの処理結果を新しいポイント フィーチャクラスに保存します。ArcGIS World Geocoding Service を使用している場合、この操作でクレジットが消費されることがあります。

ArcGIS World Geocoding Service を使用してジオコーディング操作を行うには、ArcGIS Online の組織のサブスクリプションが必要であり、クレジットを消費します。組織アカウントには、ジオコーディング リクエスト全体を実行するのに十分なクレジットが必要です。

使用法

  • 単一のフィールドに格納されている住所または複数のフィールドに分割されている住所をジオコーディングすることができます。単一の入力フィーチャには、完全な住所が格納されています。たとえば、「303 Peachtree St NE, Atlanta, GA 30308」のようになります。入力住所が、米国の一般的な住所に使用される AddressCityState、および ZIP などの複数のフィールドに分割されている場合、複数のフィールドがサポートされます。

  • 一部のロケーターは、複数の入力住所フィールド (AddressAddress2Address3 など) をサポートしています。この場合、住所コンポーネントは複数のフィールドに分割可能で、これらの住所フィールドはジオコーディング時に連結されます。たとえば、3 つのフィールドに 100Main stApt 140 がある場合や、2 つのフィールドに 100 Main stApt 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」のような完全な住所を保存する、単一入力フィールドを指定できます。また、入力住所が、米国の一般的な住所に使用される AddressCityStateZIP などの複数のフィールドに分割されている場合は、複数のフィールドを指定することもできます。

一部のロケーターは、複数の入力住所フィールド (AddressAddress2Address3 など) をサポートしています。この場合、住所コンポーネントは複数のフィールドに分割可能で、これらの住所フィールドはジオコーディング時に連結されます。たとえば、3 つのフィールドに 100Main stApt 140 がある場合や、2 つのフィールドに 100 Main stApt 140 がある場合、ジオコーディングのときは、どちらも 100 Main st Apt 140 になります。

住所ロケーターで使用されるオプションの入力住所フィールドを入力アドレス テーブル内のフィールドにマッピングしないことを選択する場合、フィールド名の代わりに <None> を使用してマッピングしないことを示します。

Field Info
out_feature_class

ジオコーディングされた出力フィーチャクラスまたはシェープファイル。

Feature Class
out_relationship_type
(オプション)
レガシー:

このパラメーターは、ArcGIS Pro では効果がありません。ArcGIS Desktop との下位互換性をサポートするために残されています。

ArcGIS Pro で使用できる値は STATIC のみです。

  • STATIC入力アドレス テーブル内のフィールドの静的コピーは出力フィーチャクラスに作成されます。使用できるのはこの値のみです。
  • DYNAMICArcGIS Pro ではこのオプションを使用できません。このツールについては、ArcGIS Desktop のヘルプをご参照ください。
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 ヘルプをご参照ください。

このパラメーターは、すべてのロケーターではサポートされていません。

  • ADDRESS_LOCATION屋根の位置、パーセルの重心、玄関などの住所位置を表すジオコード結果のジオメトリが返されます。
  • ROUTING_LOCATION車両のルート検索に使用できる道路脇に近い位置を表すジオコード結果のジオメトリが返されます。これがデフォルトです。
String
category
[category,...]
(オプション)

ロケーターが検索する場所のタイプを制限します。これにより、誤判定の一致が除外されるため、検索処理の速度が上がる可能性があります。カテゴリを指定しないと、サポートされているすべてのカテゴリに対してジオコーディングが実行されます。すべてのカテゴリ値がすべての場所と国でサポートされているとは限りません。通常、このパラメーターは次の目的に使用できます。

  • 一致を特定の場所タイプまたは住所レベルに制限する
  • 不要な住所レベルの代替一致を回避する
  • 座標検索のあいまいさを解消する

このパラメーターは、すべてのロケーターではサポートされていません。

カテゴリ フィルタリングの詳細については、REST API Web ヘルプをご参照ください。

String
output_fields
(オプション)

ジオコード結果で返されるロケーター出力フィールドを指定します。

メモ:

このパラメーターは、ディスクに格納されているか、Enterprise 10.9 以降に公開されている [ロケーターの作成 (Create Locator)] ツールまたは [フィーチャ ロケーターの作成 (Create Feature Locator)] ツールを使用して作成された入力ロケーターで使用できます。[住所ロケーターの作成 (Create Address Locator)] ツールを使用して作成されたロケーターが 1 つ以上含まれているコンポジット ロケーターでは、このパラメーターを使用できません。

  • ALL 使用可能なすべてのロケーター出力フィールドがジオコード結果に含まれます。これがデフォルトです。
  • LOCATION_ONLYShape フィールドがジオコード結果に格納されます。[in_table] 内の元のフィールド名はその元のフィールド名と共に維持されます。このオプションでは、ジオコード結果の再照合ができません。
  • MINIMAL場所とその場所がジオコード結果のロケーター内の情報にどれだけ一致しているかが記述された次のフィールドが追加されます。ShapeStatusScoreMatch_typeMatch_addr、および Addr_type [in_table] 内の元のフィールド名はその元のフィールド名と共に維持されます。
String

コードのサンプル

GeocodeAddresses (住所のジオコーディング) の例 (スタンドアロン スクリプト)

次の 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')
GeocodeAddresses (住所のジオコーディング) の例 2 (スタンドアロン スクリプト)

次の 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')
GeocodeAddresses (住所のジオコーディング) の例 3 (スタンドアロン スクリプト)

次の 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')
GeocodeAddresses (住所のジオコーディング) の例 4 (スタンドアロン スクリプト)

次の 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: はい

関連トピック