ポリゴンの按分 (Apportion Polygons) (解析)

概要

ターゲット ポリゴン レイヤーの空間オーバーレイに基づき、入力ポリゴン レイヤーの属性を集計します。また、ターゲット ポリゴンに属性を割り当てます。ターゲット ポリゴンは、各ターゲットが重複している入力ポリゴンからの数値属性を集計します。一般的に、このプロセスは「按分」として知られています。

このツールを使用して、別のフィーチャと重なっているフィーチャの割合に基づき、フィーチャの人口を推定することができます。

[ポリゴンの按分 (Apportion Polygons)] ツールのイラスト
ターゲット内の入力属性の空間合計

使用法

  • デフォルトでは、重なっているエリアの割合により、属性値が決定されます。加重フィールドをエリアと合わせて使用して、重なっている各フィーチャの集計する属性の割合を決定できます。

  • 0 の加重フィールド値は、フィールドを設定して、重なっている任意のターゲット フィーチャに対して値を割り当てます。

  • このツールは、並列処理ファクター環境を優先します。この環境が設定されていない場合 (デフォルト) や 100 に設定されている場合、フル並列処理が有効になり、ツールはコンピューター上のすべての論理コアに作業を分配しようとします。この環境を 0 に設定すると、並列処理は無効になります。ファクターを 1 ~ 99 に指定すると、ツールは数式 (並列処理ファクター / 100 * 論理コア) の小数部を切り上げた整数を適用して、使用する論理コアの割合を決定します。この数式の結果が 0 または 1 の場合、並列処理は有効化されません。

構文

arcpy.analysis.ApportionPolygon(in_features, apportion_fields, target_features, out_features, method, {estimation_features}, {weight_field}, {maintain_geometries})
パラメーター説明データ タイプ
in_features

数値属性を有するポリゴン フィーチャで、 ターゲット ポリゴン ジオメトリに集計されるもの。

Feature Layer
apportion_fields
[apportion_fields,...]

入力ポリゴンの数値フィールド。各ターゲット ポリゴン別に集計され、出力フィーチャクラスに記録されます。

Field
target_features

ポリゴン フィーチャ。出力フィーチャクラスにコピーされ、按分されたすべてのフィールドを含みます。

Feature Layer
out_features

ターゲット ポリゴンの属性とジオメトリ、および入力ポリゴンの指定された割り当てフィールドを含む出力フィーチャクラス

Feature Class
method

入力ポリゴンのフィールドをターゲット ポリゴンに按分するための方法を指定します。

  • AREA各ターゲット フィーチャの集計値に各入力ポリゴンが貢献する量は、2 つのフィーチャ間の重なるエリアによって決定されます。入力フィーチャが同量の 2 つのターゲット フィーチャに重なる場合、割り当てられるフィールドは 2 つに分割され、両方のターゲット フィーチャに合計値の半分ずつ貢献します。これがデフォルトです。
String
estimation_features
(オプション)

このパラメーターは ArcGIS Pro 2.7 では無効で、将来のリリースでサポートされる予定です。

Feature Layer
weight_field
(オプション)

ターゲット ポリゴン レイヤーの数値フィールド。按分する入力ポリゴンのフィールドの割り当て値を、どのターゲット ポリゴンにより多く付与するかを調整するために使用します。加重の高いターゲットには、高い割合のフィールド値が按分されます。

Field
maintain_geometries
(オプション)

出力フィーチャクラスがターゲット ポリゴン レイヤーの元のジオメトリを保持するかどうかを指定します。

  • MAINTAIN_GEOMETRIES出力フィーチャクラスがターゲット ポリゴン レイヤーの元のジオメトリを保持します。これがデフォルトです。
  • INTERSECT_GEOMETRIES出力フィーチャクラスは、ターゲット ポリゴンと入力ポリゴンのジオメトリの交差部分になります。入力ポリゴンに重なるターゲット ポリゴンのエリアのみが、出力に含まれます。
Boolean

コードのサンプル

ApportionPolygon (ポリゴンの按分) の例 1 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、ApportionPolygon 関数の使用方法を示しています。

import arcpy
arcpy.env.workspace = "C:/data/MyAnalysis.gdb"
arcpy.ApportionPolygon_analysis(
        "CensusBlockGroups", "Pop2020", "StoreServiceArea", 
        "StoreServiceArea_w_Population", "AREA", "", "", "MAINTAIN_GEOMETRIES")
ApportionPolygon (ポリゴンの按分) の例 2 (スタンドアロン スクリプト)

次のスタンドアロン スクリプトは、エリアで加重された人口を国勢調査区グループ レイヤーからストア サービス エリア ポリゴンに送ります。

# Name: Store Service Area Get Population.py
# Description: Use apportionment to transfer population figures to different geometry 
# Import system modules 
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data/MyAnalysis.gdb"
# Perform apportionment
inputDataWithPop = "CensusBlockGroups"
popField = "Pop2020"
targetServiceAreas = "Store_ServiceAreas"
outputApp = "Store_ServiceAreas_w_Population"
apportionMethod = "AREA"
keepTargetGeom = "MAINTAIN_GEOMETRIES"
arcpy.ApportionPolygon_analysis(inputDataWithPop, popField, targetServiceAreas, 
                                outputApp, apportionMethod, "", "", 
                                keepTargetGeom)
# Summarize store service area populations by store admin region
outStats = "PopulationPerSalesRegion_tlb"
statsFields = [["Pop2020", "SUM"]]
regionField = "SalesRegion" # Values like North, North-East, etc.
arcpy.Statistics_analysis(outputApp, outStats, statsFields, regionField)

ライセンス情報

  • Basic: はい
  • Standard: はい
  • Advanced: はい

関連トピック