ラベル | 説明 | データ タイプ |
入力フィーチャ | ゾーンに集約されるフィーチャクラスまたはフィーチャ レイヤー。 | Feature Layer |
出力フィーチャ | 各ゾーンに集約されるフィーチャを示す出力フィーチャクラス。 フィーチャクラスは ZONE_ID フィールドでシンボル表示され、指定した各条件の値を表示するフィールドが含まれます。 | Feature Class |
ゾーンの作成手法 | 各ゾーンの作成に使用する方法を指定します。 ゾーンは、指定されたすべての条件が満たされるまで拡大します。
| String |
ターゲットのゾーン数 (オプション) | 作成されるゾーンの数。 | Long |
ゾーンの構築条件とターゲット (オプション) | 考慮される変数、そのターゲット値、およびウェイト (オプション) を指定します。 デフォルトのウェイトは 1 です。これを変更しない限り、各変数は同様に寄与します。 | Value Table |
ゾーンの構築条件 (オプション) | 考慮される変数とウェイト (オプション) を指定します。 デフォルトのウェイトは 1 です。これを変更しない限り、各変数は同様に寄与します。 | Value Table |
空間的制限 (オプション) | ゾーンを拡大するときの近傍の定義方法を指定します。 ゾーンは、すでにゾーン内にある少なくとも 1 つのフィーチャの近傍である新しいフィーチャにのみ拡大できます。 入力フィーチャがポリゴンの場合、デフォルトの空間的制約は [隣接エッジ コーナー] になります。 入力フィーチャがポイントの場合、デフォルトの空間的制約は [ドローネ三角形分割の切詰め] になります。
| String |
空間ウェイト マトリックス ファイル (オプション) | フィーチャ間の空間リレーションシップと、オプションで時系列のリレーションシップを定義する空間ウェイトが含まれるファイルへのパス。 | File |
ゾーンの特性 (オプション) | 作成するゾーンの特性を指定します。
| String |
考慮する属性 (オプション) | 最終的なゾーンの選択時に考慮する属性と統計情報を指定します。 合計値、平均値、中央値、偏差に基づいて属性を均質化することができます。 たとえば、住宅価格に基づいてゾーンを作成している場合で、各ゾーンの総収入の平均をバランス調整したい場合、ゾーン全体で収入の平均が最も等しいソリューションが優先されます。 | Value Table |
考慮する距離 (オプション) | ゾーンあたりの合計距離を均質化するために使用されるフィーチャクラス。 各入力フィーチャから、このパラメーターで指定された最近接フィーチャまでの距離が計算されます。 この距離は、最終的なゾーン ソリューションを選択するときに、追加属性制限として使用されます。 たとえば、最も近い警察署から大体同じ距離にある警察の巡回管轄区域を作成できます。 | Feature Layer |
割合を維持するカテゴリ変数 (オプション) | ゾーンの割合に考慮されるカテゴリ変数。 | Field |
按分方法 (オプション) | 選択したカテゴリ値に基づいて、維持される割合のタイプを指定します。
| String |
個体数 (オプション) | ランダムに生成される初期シードの数。 大きなデータセットの場合、この数値を増やすと探索空間が拡大され、より優れたソリューションが見つかる可能性が高くなります。 デフォルトは 100 です。 | Long |
生成数 (オプション) | ゾーンの検索プロセスを繰り返す回数。 大きなデータセットの場合、最適なソリューションを見つけるために、この数値を増やすことをお勧めします。 デフォルト値は 50 回の生成です。 | Long |
突然変異ファクター (オプション) | 個々のシード値が新しいシードのセットに突然変異する確率。 突然変異は、すべての世代で考えられるソリューションの変異性を導入することで探索空間を拡大し、最適なソリューションへの迅速な収束を可能にします。 デフォルトは 0.1 です。 | Double |
出力収束テーブル (オプション) | すべての世代で見つかった最適なソリューションの合計適合性スコアと、個々のゾーン制限の適合性スコアを含むテーブルが作成されます。 | Table |
サマリー
指定した条件に基づき、遺伝的成長アルゴリズムを使用して、分析範囲内で空間的に隣接したゾーンを作成します。
同数のフィーチャを含むゾーン、属性値のセットに基づく類似のゾーン、またはそれら両方を作成できます。 また、大体同じ面積のゾーン、できる限りコンパクトなゾーン、および他の変数の一定な要約統計量を維持するゾーンを選択することもできます。
使用法
ゾーンを作成するには、[ゾーンの作成方法] パラメーターで、[属性ターゲット]、[ゾーン数と属性ターゲット]、または [定義されたゾーン数] を選択します。 [属性ターゲット] を選択した場合、指定した 1 つ以上の変数のターゲット値に基づいてゾーンが作成されます。 [ゾーン数と属性ターゲット] オプションは、指定した数のゾーンで属性をバランス調整します。 [定義されたゾーン数] オプションを使用すると、フィーチャ数に基づいてゾーンを作成できます。
このツールは、入力ポイントまたはポリゴンを受け取ることができます。
[ゾーンの構築条件] パラメーターに複数の変数を指定する場合、各条件にウェイトを指定できます。 ウェイトは、ウェイト フィールドで指定された値に比例的に適用されます。
このツールはアルゴリズムの生成の並列処理をサポートしており、デフォルトで利用可能なプロセッサの 50 パーセントを使用します。 プロセッサの数を増減するには、並列処理ファクター環境を使用します。
パラメーター
arcpy.stats.BuildBalancedZones(in_features, output_features, zone_creation_method, {number_of_zones}, {zone_building_criteria_target}, {zone_building_criteria}, {spatial_constraints}, {weights_matrix_file}, {zone_characteristics}, {attribute_to_consider}, {distance_to_consider}, {categorial_variable}, {proportion_method}, {population_size}, {number_generations}, {mutation_factor}, {output_convergence_table})
名前 | 説明 | データ タイプ |
in_features | ゾーンに集約されるフィーチャクラスまたはフィーチャ レイヤー。 | Feature Layer |
output_features | 各ゾーンに集約されるフィーチャを示す出力フィーチャクラス。 フィーチャクラスは ZONE_ID フィールドでシンボル表示され、指定した各条件の値を表示するフィールドが含まれます。 | Feature Class |
zone_creation_method | 各ゾーンの作成に使用する方法を指定します。 ゾーンは、指定されたすべての条件が満たされるまで拡大します。
| String |
number_of_zones (オプション) | 作成されるゾーンの数。 | Long |
zone_building_criteria_target [[variable, sum, weight],...] (オプション) | 考慮される変数、そのターゲット値、およびウェイト (オプション) を指定します。 デフォルトのウェイトは 1 です。これを変更しない限り、各変数は同様に寄与します。 | Value Table |
zone_building_criteria [[variable, weight],...] (オプション) | 考慮される変数とウェイト (オプション) を指定します。 デフォルトのウェイトは 1 です。これを変更しない限り、各変数は同様に寄与します。 | Value Table |
spatial_constraints (オプション) | ゾーンを拡大するときの近傍の定義方法を指定します。 ゾーンは、すでにゾーン内にある少なくとも 1 つのフィーチャの近傍である新しいフィーチャにのみ拡大できます。 入力フィーチャがポリゴンの場合、デフォルトの空間的制約は [隣接エッジ コーナー] になります。 入力フィーチャがポイントの場合、デフォルトの空間的制約は [ドローネ三角形分割の切詰め] になります。
| String |
weights_matrix_file (オプション) | フィーチャ間の空間リレーションシップと、オプションで時系列のリレーションシップを定義する空間ウェイトが含まれるファイルへのパス。 | File |
zone_characteristics [zone_characteristics,...] (オプション) | 作成するゾーンの特性を指定します。
| String |
attribute_to_consider [[variable, function],...] (オプション) | 最終的なゾーンの選択時に考慮する属性と統計情報を指定します。 合計値、平均値、中央値、偏差に基づいて属性を均質化することができます。 たとえば、住宅価格に基づいてゾーンを作成している場合で、各ゾーンの総収入の平均をバランス調整したい場合、ゾーン全体で収入の平均が最も等しいソリューションが優先されます。 | Value Table |
distance_to_consider [distance_to_consider,...] (オプション) | ゾーンあたりの合計距離を均質化するために使用されるフィーチャクラス。 各入力フィーチャから、このパラメーターで指定された最近接フィーチャまでの距離が計算されます。 この距離は、最終的なゾーン ソリューションを選択するときに、追加属性制限として使用されます。 たとえば、最も近い警察署から大体同じ距離にある警察の巡回管轄区域を作成できます。 | Feature Layer |
categorial_variable (オプション) | ゾーンの割合に考慮されるカテゴリ変数。 | Field |
proportion_method (オプション) | 選択したカテゴリ値に基づいて、維持される割合のタイプを指定します。
| String |
population_size (オプション) | ランダムに生成される初期シードの数。 大きなデータセットの場合、この数値を増やすと探索空間が拡大され、より優れたソリューションが見つかる可能性が高くなります。 デフォルトは 100 です。 | Long |
number_generations (オプション) | ゾーンの検索プロセスを繰り返す回数。 大きなデータセットの場合、最適なソリューションを見つけるために、この数値を増やすことをお勧めします。 デフォルト値は 50 回の生成です。 | Long |
mutation_factor (オプション) | 個々のシード値が新しいシードのセットに突然変異する確率。 突然変異は、すべての世代で考えられるソリューションの変異性を導入することで探索空間を拡大し、最適なソリューションへの迅速な収束を可能にします。 デフォルトは 0.1 です。 | Double |
output_convergence_table (オプション) | すべての世代で見つかった最適なソリューションの合計適合性スコアと、個々のゾーン制限の適合性スコアを含むテーブルが作成されます。 | Table |
コードのサンプル
次の Python ウィンドウ スクリプトは、BuildBalancedZones 関数の使用方法を示しています。
import arcpy
arcpy.env.workspace = r"c:\data\project_data.gdb"
arcpy.stats.BuildBalancedZones("US_Counties", "out_features",
"NUMBER_OF_ZONES", 5, None, None, "TRIMMED_DELAUNAY_TRIANGULATION",
None, None, None, None, None, '', 100, 50, 0.1)
次のスタンドアロン Python スクリプトは、BuildBalancedZones 関数の使用方法を示しています。
# Aggregate states into zones that have a target population of approximately
# 250,000 people. Make the zones of equal area and compact.
import arcpy
# Set the current workspace (to avoid having to specify the full path to
# the feature classes each time)
arcpy.env.workspace = r"c:\data\project_data.gdb"
arcpy.stats.BuildBalancedZones("states", "out_zones", "ATTRIBUTE_TARGET",
None, "POPULATION 250000 1", None, "TRIMMED_DELAUNAY_TRIANGULATION",
None, "EQUAL_AREA;COMPACTNESS", None, None, None, '', 100, 50, 0.1)