ポリゴンの属性を結合 (Join Attributes From Polygon) (犯罪分析と安全)

サマリー

入力ポリゴン フィーチャの属性を入力ポイント フィーチャに結合します。

使用法

  • ポイント フィーチャが完全にポリゴン フィーチャ内に存在するか、ポリゴン フィーチャに含まれている場合、ツールは [入力ポリゴン フィーチャ] の属性を [ターゲット ポイント フィーチャ] に転送します。

  • デフォルトでは、[入力ポリゴン フィーチャ] の属性は [ターゲット ポイント フィーチャ] の属性には追加されません。[結合フィールド] パラメーターで指定することで、[ターゲット ポイント フィーチャ] に追加する属性を定義できます。

  • [ターゲット ポイント フィーチャ] のフィーチャが [入力ポリゴン フィーチャ] の複数のフィーチャに含まれている場合、ポイントはオブジェクト ID 値が最大のポリゴンから属性を取得します。

パラメーター

ラベル説明データ タイプ
ターゲット ポイント フィーチャ

[入力ポリゴン フィーチャ] の属性で更新されるポイント フィーチャ。

in_features の属性で更新されるポイント フィーチャ。

Feature Layer
入力ポリゴン フィーチャ

入力ポリゴン フィーチャ。

Feature Layer
結合フィールド

[ターゲット ポイント フィーチャ] に追加される [入力ポリゴン フィーチャ] のフィールド。

Field

派生した出力

ラベル説明データ タイプ
更新されたポイント フィーチャ

更新されたポイント フィーチャ。

フィーチャ レイヤー

arcpy.ca.JoinAttributesFromPolygon(target_features, in_features, fields)
名前説明データ タイプ
target_features

in_features の属性で更新されるポイント フィーチャ。

Feature Layer
in_features

入力ポリゴン フィーチャ。

Feature Layer
fields
[fields,...]

[ターゲット ポイント フィーチャ] に追加される [入力ポリゴン フィーチャ] のフィールド。

Field

派生した出力

名前説明データ タイプ
out_features

更新されたポイント フィーチャ。

フィーチャ レイヤー

コードのサンプル

JoinAttributesFromPolygon (ポリゴンの属性を結合) の例 1 (Python ウィンドウ)

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

import arcpy
arcpy.env.workspace = r"C:\data\city_pd.gdb"
arcpy.ca.JoinAttributesFromPolygon("Arrests", "Precincts")
JoinAttributesFromPolygon (ポリゴンの属性を結合) の例 2 (スタンドアロン スクリプト)

次の Python スクリプトは、スタンドアロン スクリプトで JoinAttributesFromPolygon 関数を使用する方法を示しています。

# Name: JoinAttributesFromPolygon.py
# Description:  Adding police precinct id and name to arrests, then printing the number of arrests by precinct.
# import system modules 
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:\data\city_pd.gdb"
# Set local variables
target_features = "Arrests"
in_features = "Precincts"
join_fields = ['districtid', 'name'] # Police Precinct ID and Name
# Execute JoinAttributesFromPolygon
arcpy.ca.JoinAttributesFromPolygon(target_features, in_features, join_fields)
#Print count of arrest by precinct
count_dict = {}
with arcpy.da.SearchCursor(target_features, 'name') as cursor:
    for row in cursor:
        try:
            count_dict[row[0]] += 1
        except:
            count_dict[row[0]] = 1
for precinct, count in count_dict.items():
    print("Name: " + precinct + " Arrests: " + str(count))

環境

特殊なケース

ライセンス情報

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

関連トピック