コンポジット住所ロケーターの作成 (Create Composite Address Locator) (ジオコーティング)

サマリー

コンポジット ロケーターを作成します。 コンポジット ロケーターは、2 つ以上の個別のロケーターから構成され、複数のロケーターを使用して住所と場所を照合できるようにします。

コンポジット ロケーターの詳細

使用法

  • コンポジット ロケーターを作成する前に、[ロケーターの作成 (Create Locator)] ツールまたは [フィーチャ ロケーターの作成 (Create Feature Locator)] ツールを使用して、登録ロケーターを作成します。

  • コンポジット ロケーター用の空間参照が必要です。 ツールの環境設定で別の出力座標系を指定しない限り、最初に登録したロケーターの空間参照が使用されます。

  • マルチロール ロケーターArcGIS StreetMap Premium ロケーター (など)、および複数の単一ロール ロケーターの [結果の順序] パラメーターで [ロールおよびスコアの順序] オプションを使用します。 このオプションは、ロケーターとロールを最適なフォールバック順に並べます。

  • in_result_ordering パラメーターの正確な Python 構文を生成するには、まず、[ジオプロセシング] ウィンドウで適切な [結果の順序] パラメーター オプションを使用してツールを実行します。 次に、[実行] メニューを開いて [Python コマンドのコピー] を選択します。

パラメーター

ラベル説明データ タイプ
住所ロケーター

コンポジット ロケーターの作成に使用されるロケーター。 登録ロケーターの順番によって、候補がどのように検索されて場所または住所が照合されるかが決まります。 単一の場所または住所をジオコーディングすると、ロケーターに選択基準が指定されていない限り、すべての登録ロケーターを使用してその場所または住所が照合されます。 見つかったすべての候補は、リストに示された登録ロケーターの順に表示されます。 住所または場所のテーブルをジオコーディングすると、最初の登録ロケーターから最初に見つかった最適な候補に対して住所または場所が自動的に照合されます。 住所も場所も照合できない場合は、リスト上の次のロケーターが検索されます。

各登録ロケーターの参照名が必須です。 これは、コンポジット ロケーターが参照するロケーターの名前です。 名前にスペースと特殊記号を使用することはできません。 名前の最大長さは 14 文字です。

Value Table
フィールド マップ

各登録ロケーターが使用する入力フィールドの、コンポジット ロケーターの入力フィールドへのマッピング。

これには、登録ロケーターによって生成されるフィールドとそれらのフィールドの内容が含まれます。 一意の各入力フィールドが [フィールド マップ] パラメーターに表示されます。 [入力フィールド] 列の左側にあるのが、コンポジット ロケーターのすべての入力フィールドのリストです。 フィールドを選択すると、それぞれの登録ロケーターのフィールドを表示できます。これらのフィールドは、[サブフィールド] および [プロパティ] 列の該当するフィールドにマッピングされます。 これらのフィールドがコンポジット ロケーターの入力フィールドです。

注意:

[フィールド マップ] パラメーターからどのロケーター フィールドも削除しないでください。 すべてのロケーター フィールドを使用して作成されない限り、コンポジット ロケーターは無効になります。

Field Mappings
選択基準
(オプション)

各登録ロケーターの選択基準。 各登録ロケーターに対して 1 つだけの選択基準をサポートしています。

コンポジット ロケーターを作成するときには、どのロケーターを使用するかを入力住所フィールドの値に基づいて指定することができます。 たとえば、コンポジット ロケーターで使用されているロケーターに特定の都市の道路情報が含まれている場合は、その都市の名前が含まれていない住所と場所をすべて除外することができます。 選択基準を使用すると、特定の住所に対する基準を満たしていない登録ロケーターが対象から除外されるため、ジオコーディング処理が効率化されます。 たとえば、道路住所ロケーターに「"City" = 'Atlanta'」という選択基準が指定されていると、このロケーターでは「Atlanta」という都市名を含む住所のみがジオコーディングされます。

選択基準を指定するには、[選択基準] 列で基準を適用するロケーターのチェックボックスをオンにします。 「"City" = 'Atlanta'」などの式をテキスト ボックスに入力するか、その他ボタンをクリックして [ロケーターの選択基準の指定] ダイアログ ボックスを開き、選択基準を定義することができます。

Value Table
出力コンポジット住所ロケーター

作成されるコンポジット住所ロケーター。 ArcGIS Pro では、ロケーターをファイル フォルダーに保存することしかできません。

Address Locator
結果の順序
(オプション)

登録ロケーターのフォールバック順を指定し、この順序で住所を照合することで、ジオコーディング時に最適な一致が見つかる可能性を高めることができます。

  • [ロケーターの順序を使用] - 登録ロケーターは、追加された順序になり、「複数のロケーターのコンポジット ロケーターへの結合」に記載されたフォールバック順に従います。 これがデフォルトです。
  • [ロールおよびスコアの順序] - 属しているロケーターを、ロールとフォールバックの順序でグループ分けします。
  • [カスタム順序] - 参加するロケーターのカスタマイズ可能なフォールバック順を使用して、マルチロール ロケーターのロール間にロケーターを挿入できるようになります。
String

arcpy.geocoding.CreateCompositeAddressLocator(in_address_locators, in_field_map, {in_selection_criteria}, out_composite_address_locator, {in_result_ordering})
名前説明データ タイプ
in_address_locators
[[in_address_locator, name],...]

コンポジット ロケーターの作成に使用されるロケーター。 登録ロケーターの順番によって、候補がどのように検索されて場所または住所が照合されるかが決まります。 単一の場所または住所をジオコーディングすると、ロケーターに選択基準が指定されていない限り、すべての登録ロケーターを使用してその場所または住所が照合されます。 見つかったすべての候補は、リストに示された登録ロケーターの順に表示されます。 住所または場所のテーブルをジオコーディングすると、最初の登録ロケーターから最初に見つかった最適な候補に対して住所または場所が自動的に照合されます。 住所も場所も照合できない場合は、リスト上の次のロケーターが検索されます。

各登録ロケーターの参照名が必須です。 これは、コンポジット ロケーターが参照するロケーターの名前です。 名前にスペースと特殊記号を使用することはできません。 名前の最大長さは 14 文字です。

Value Table
in_field_map

各登録ロケーターが使用する入力フィールドの、コンポジット住所ロケーターの入力フィールドへのマッピング。

ロケーターの入力フィールドごとに、サンプル文字列 "Address 'Address or Intersection' true true false 4 Text 0 0 ,First,'#',Street" に従ってフィールド情報を書式設定します。 この文字列に含まれる情報の内容は次のとおりです。

  • 新しいフィールド名 (Address) - 該当するコンポジット ロケーターの新しいロケーター フィールド名。

    コンポジット内の一方のロケーターに Address フィールドが存在し、もう一方のロケーターに Street Address フィールドが存在する場合があります。 新しいコンポジット ロケーター フィールドを Address として指定することができます。これで、元のロケーター フィールドが両方とも参照されます。

  • 新しいフィールド名のエイリアス ('Address or Intersection') - 該当するコンポジット ロケーターの新しいロケーター フィールド名のエイリアス。

    Address という新しいフィールド名が付けられたコンポジット ロケーターでは、そのフィールドに 'Address or Intersection' というエイリアスを指定することができます。

  • isEditable (true) - 新しいコンポジット ロケーター フィールドが編集可能かどうかを示します。 オプションは、true または false です。
  • NULL 値を許可 (true) - 新しいコンポジット ロケーター フィールドで NULL 値を許可するかどうかを示します。 オプションは、true または false です。
  • 必須 (false) - 新しいコンポジット ロケーター フィールドが必須フィールドかどうかを示します。 オプションは、true または false です。
  • 長さ (4) - 新しいコンポジット ロケーター フィールドの長さ。
  • タイプ (Text) - 新しいコンポジット ロケーター フィールドのデータ タイプ。 この値は常にロケーターの Text にする必要があります。
  • 縮尺 (0) - 新しいコンポジット ロケーター フィールドの縮尺。 1 ~ 100 の任意の値を使用できます。 この値はロケーターに適用されませんが、有効な値を使用する必要があります。
  • 精度 (0) - 新しいコンポジット ロケーター フィールドの精度。 1 ~ 100 の任意の値を使用できます。 この値はロケーターに適用されませんが、有効な値を使用する必要があります。
  • マージ ルール (First) - 新しいコンポジット ロケーター フィールドのマージ ルール。 任意のマージ ルール値を使用できます。 この値はロケーターに適用されませんが、有効な値を使用する必要があります。
  • 区切り文字 ('#') - 新しいコンポジット ロケーター フィールドの区切り文字。 サポートされている任意の区切り文字を使用できます。
  • 元のロケーター フィールド名 (Street) - 元の登録ロケーターのロケーター フィールド名。
Field Mappings
in_selection_criteria
[[in_address_locator, selection_criteria],...]
(オプション)

各登録ロケーターの選択基準。 登録ロケーターごとに 1 つの選択基準のみがサポートされています。

選択基準を使用すると、特定の住所または場所に対する基準を満たしていない登録ロケーターが対象から除外されるため、ジオコーディング処理が効率化されます。 ジオコーディング処理での選択基準の使用方法の詳細については、「複数のロケーターの組み合わせによるコンポジット ロケーターの作成の基本」をご参照ください。

Value Table
out_composite_address_locator

作成されるコンポジット住所ロケーター。 ArcGIS Pro では、ロケーターをファイル フォルダーに保存することしかできません。

Address Locator
in_result_ordering
(オプション)

登録ロケーターのフォールバック順を指定し、この順序で住所を照合することで、ジオコーディング時に最適な一致が見つかる可能性を高めることができます。

  • Use locator order - 登録ロケーターは、追加された順序になり、「複数のロケーターのコンポジット ロケーターへの結合」に記載されたフォールバック順に従います。 これがデフォルトです。
    • 構文はロケーター名のカンマ区切り文字列です。
    • 2 つのロケーター (例: Atlanta.loc と Raleigh.loc) を含むコンポジット ロケーターの場合、構文は "Atlanta, Memphis" の形式になります。
  • Order by role and score - 登録ロケーターが、ロールとフォールバック順でグループ化されます。
    • 構文はロールのグループのカンマ区切り文字列で、[LocatorRole1](LocatorName1.LocatorRole1, LocatorName2.LocatorRole1) のような形式になります。
    • それぞれが PointAddress ロールと StreetAddress ロールを含む 2 つのマルチロール ロケーター (例: Atlanta.loc と Raleigh.loc) を含むコンポジット ロケーターの場合、構文は "[PointAddress](Atlanta.PointAddress, Memphis.PointAddress),[StreetAddress](Memphis.StreetAddress,Atlanta.StreetAddress)" の形式になります。
    • ロールは精度の高い順に並べる必要があります。
  • Custom order - 登録ロケーターのカスタマイズ可能なフォールバック順を使用して、マルチロール ロケーターのロール間にロケーターを挿入できるようになります。
    • 構文はロケーター名とロールのカンマ区切り文字列で、LocatorName.LocatorRole のような形式になります。
    • それぞれが PointAddress ロールと StreetAddress ロールを含む 2 つのマルチロール ロケーター (例: Atlanta.loc と Raleigh.loc) を含むコンポジット ロケーターの場合、構文は "Atlanta.StreetAddress,Memphis.PointAddress,Memphis.StreetAddres,Atlanta.PointAddress" の形式になります。
    • ロケーターとロールは任意の順序で配置できますが、精度の高いロールよりも前に精度の低いロールを配置すると、予期しない動作が発生する可能性があります。

正確な Python 構文を生成するには、まず、[ジオプロセシング] ウィンドウからツールを実行します。 次に、[実行] メニューを開いて [Python コマンドのコピー] を選択します。

String

コードのサンプル

CreateCompositeAddressLocator の例 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、イミディエイト モードで CreateCompositeAddressLocator 関数を使用する方法を示しています。

# Create a composite address locator using the StreetMap US Streets and Tutorial Atlanta locators.

# Import system modules
import arcpy 

arcpy.env.workspace = "C:/ArcTutor/Geocoding/atlanta/"

# Set local variables:
US_Streets_locator = "C:/dm_stmap_dvd/streetmap_na/data/Street_Addresses_US"
Atlanta_locator = Atlanta
Atlanta_Composite = US_Atlanta_Composite

# Field mapping
address_field_map = "Address 'Street or Intersection' true true false 100 Text 0 0 ,First,#,Atlanta_locator,Address,0,0,US_Streets_locator,Street;"
city_field_map = "City 'City or Placename' true true false 40 Text 0 0 ,First,#,Atlanta_locator,City,0,0,US_Streets_locator,City;"
state_field_map = "State 'State' true true false 20 Text 0 0 ,First,#,Atlanta_locator,State,0,0,US_Streets_locator,State;"
zip_field_map = "Zip 'Zipcode' true true false 10 Text 0 0 ,First,#,Atlanta_locator,Zip,0,0,US_Streets_locator,ZIP"

composite_locator_field_map = address_field_map + city_field_map + state_field_map + zip_field_map

arcpy.geocoding.CreateCompositeAddressLocator("Atlanta_locator Atlanta;US_Streets_locator US_Streets", composite_loactor_field_map,"Atlanta '\"City\" = 'Atlanta'';US_Streets #",Atlanta_Composite)

ライセンス情報

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes

関連トピック