ラベル | 説明 | データ タイプ |
入力ポイント フィーチャ | クラスター、ライン、またはポリゴンの作成に使用する入力ポイント フィーチャ。 | Feature Layer |
出力フィーチャクラス | 出力フィーチャクラス。 [集約方法] パラメーターが [クラスター] に設定されている場合、出力がポイント フィーチャクラスになります。 [集約方法] パラメーターが [最近隣フィーチャ] に設定されている場合、出力のジオメトリ タイプが [入力比較フィーチャ] パラメーター値と同じになります。 | Feature Class |
クラスター許容値 (オプション) | ポイントを分ける最大距離。この距離の範囲内では、ポイントは同じクラスターの一部として見なされます。 クラスター許容値が指定されない場合、ツールは、ポイント フィーチャが重なっているクラスターを作成します。 このパラメーターは、[集約方法] パラメーターが [クラスター] に設定されている場合に有効です。 | Linear Unit |
出力フィールド (オプション) | 出力に渡す入力フィーチャのフィールド。 | Field |
集約方法 (オプション) | 入力ポイント フィーチャの集約方法を指定します。
| String |
入力比較フィーチャ (オプション) | [入力ポイント フィーチャ] パラメーター値を集約する入力比較ポリゴンまたはライン フィーチャクラス。 このパラメーターは、[集約方法] パラメーターが [最近隣フィーチャ] に設定されている場合に有効です。 | Feature Layer |
サマリー
フィーチャの 80-20 分析を実施し、インシデント数を基にポイント クラスター、ライン、またはポリゴンを作成します。 このツールには、インシデントが過度に発生している位置を特定するために、累積率フィールドを計算します。
使用法
80-20 ルールとは、インシデントの大半がごく少数の位置で発生しているという理論的な概念です。たとえば、20% の位置で 80% のインシデントが発生していることを意味します。
犯罪解析の分野では、このツールはさまざまな方法で使用されます。 一般的な解析ワークフロー解析には、次のようなものがあります。
- インシデントをクラスターに集約 - このタイプの解析は、特定の期間でインシデント数が最も高いプロパティを識別します。
- インシデントをストリート セグメントに集約 - このタイプの解析は、ホット ストリートの検索と説明されることもあります。
- インシデントを特定の近隣境界に集約 - このタイプの解析は、ホット エリアの検索と説明されることもあります。
[集約方法] パラメーターは、80-20 分析の実行方法と入力ポイント フィーチャの集約方法を決定します。 分析の実行に使用可能な 2 つの集約方法は、[クラスター] と [最近隣フィーチャ] です。これらについては、以下で説明します。
- [クラスター] - 入力ポイント フィーチャは、[密度ベースのクラスター分析 (Density-based Clustering)] ツールで使用される指定距離 (DBSCAN) クラスター分析手法に基づいてクラスター化されます。
- [最近隣フィーチャ] - 入力ポイント フィーチャは、最も近い入力比較ラインまたはポリゴン フィーチャに関連付けられます。
[集約方法] パラメーターが [クラスター] に設定されている場合に、次のフィールドが出力に追加されます。
- ICOUNT- 対象クラスターのクラスター許容値内にあるポイント数。
- PERC- 対象クラスターのクラスター許容値内にある、総ポイント数の割合。
- CUMU_PERC- 現在のクラスター ポイントと、その他すべての大きいクラスター ポイントの累積率。ICOUNT 値を使用して計算される。
- CUMU_LPERC- 現在のクラスター ポイントと、その他すべての大きいクラスター ポイントの累積率。出力ポイント フィーチャの総数を使用して計算される。
CUMU_PERC と CUMU_LPERC の値は、過剰なクラスター位置の数が、犯罪の大部分を占めているかどうかを判断するために使用されます。たとえば、クラスターの位置の 20% がポイント総数の 80% を含んでいるかどうかなどです。
[集約方法] パラメーターが [最近隣フィーチャ] に設定されている場合に、次のフィールドが出力に追加されます。
- ICOUNT- ラインまたはポリゴン フィーチャに最近隣にあるポイントの数。
- PERC- ラインまたはポリゴン フィーチャの近くまたは内側にあるポイントの総数の割合。
- CUMU_PERC- 現在のフィーチャと、回数が大きいその他すべてのフィーチャの累積率。ICOUNT 値を使用して計算される。
- CUMU_LPERC- 現在のフィーチャと、回数が大きいその他すべてのフィーチャの累積率。出力ラインまたはポリゴン フィーチャの総数を使用して計算される。
- INC_KM- キロメートルあたりのフィーチャ数。 これは、[入力比較フィーチャ] がラインである場合に出力に追加されます。
- INC_MI- マイルあたりのフィーチャ数。 これは、[入力比較フィーチャ] がラインである場合に出力に追加されます。
- INC_SQKM- 平方キロメートルあたりのフィーチャ数。 これは、[入力比較フィーチャ] がポリゴンである場合に出力に追加されます。
- INC_SQMI- 平方マイルあたりのフィーチャ数。 これは、[入力比較フィーチャ] がポリゴンである場合に出力に追加されます。
CUMU_PERC と CUMU_LPERC の値は、過剰なラインまたはポリゴン フィーチャの数が、犯罪の大部分を占めているかどうかを判断するために使用されます。たとえば、ラインまたはポリゴン フィーチャの位置の 20% がポイント総数の 80% を含んでいるかどうかなどです。
出力内のレコードは、生成される ICOUNT (インシデント数)、CUMU_PERC (累積率)、PERC (インシデント率)、CUMU_LPERC (累積ロケーション率) フィールド値に基づいて並べ替えられます。
出力フィーチャクラスは、ICOUNT フィールドによってシンボル表示されます。
出力ポイント フィーチャクラスは、各位置で発生するインシデント数に基づく等級シンボル レイヤーによってシンボル表示されます。
パラメーター
arcpy.ca.EightyTwentyAnalysis(in_features, out_feature_class, {cluster_tolerance}, {out_fields}, {aggregation_method}, {in_comparison_features})
名前 | 説明 | データ タイプ |
in_features | クラスター、ライン、またはポリゴンの作成に使用する入力ポイント フィーチャ。 | Feature Layer |
out_feature_class | 出力フィーチャクラス。 aggregation_method パラメーターが POINT_CLUSTER に設定されている場合、出力がポイント フィーチャクラスになります。 aggregation_method パラメーターが CLOSEST_FEATURE に設定されている場合、出力のジオメトリ タイプが in_comparison_features パラメーター値と同じになります。 | Feature Class |
cluster_tolerance (オプション) | ポイントを分ける最大距離。この距離の範囲内では、ポイントは同じクラスターの一部として見なされます。 クラスター許容値が指定されない場合、ツールは、ポイント フィーチャが重なっているクラスターを作成します。 このパラメーターは、aggregation_method パラメーターが POINT_CLUSTER に設定されている場合にアクティブになります。 | Linear Unit |
out_fields [out_fields,...] (オプション) | 出力に渡す入力フィーチャのフィールド。 | Field |
aggregation_method (オプション) | 入力ポイント フィーチャの集約方法を指定します。
| String |
in_comparison_features (オプション) | in_features パラメーター値を集約する入力比較ポリゴンまたはライン フィーチャクラス。 このパラメーターは、aggregation_method パラメーターが CLOSEST_FEATURE に設定されている場合にアクティブになります。 | Feature Layer |
コードのサンプル
次の Python ウィンドウ スクリプトは、イミディエイト モードで EightyTwentyAnalysis 関数を使用する方法を示しています。
import arcpy
arcpy.env.workspace = r"C:/data/city_pd.gdb"
arcpy.ca.EightyTwentyAnalysis("CallsForService", "80_20_clusters")
次の Python スクリプトは、スタンドアロン スクリプトで EightyTwentyAnalysis 関数を使用する方法を示しています。
# Name: EightyTwentyAnalysis.py
# Description: Conducts an 80/20 analysis of 911 calls to determine clusters of calls within 50 meters of each other.
# import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:\data\city_pd.gdb"
# Set local variables
in_features = "CallsForService"
out_feature_class = "80_20_clusters"
cluster_tolerance = "50 Meters"
out_fields = ["FULLADDR","RESCITY", "RESSTATE", "RESZIP5"]
# Run EightyTwentyAnalysis
arcpy.ca.EightyTwentyAnalysis(in_features,
out_feature_class,
cluster_tolerance,
out_fields)
次の Python スクリプトは、近隣の犯罪数が過剰なすストリート セグメントを特定するために、スタンドアロン スクリプトで EightyTwentyAnalysis 関数を使用する方法を示しています。 犯罪解析では、このタイプの分析は、ホット スポットの検索と説明されることもあります。
# Name: EightyTwentyAnalysisStreets.py
# Description: Conduct an 80/20 analysis of calls for service to determine street segments with a disproportional amount of crimes nearby.
# import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:\data\city_pd.gdb"
# Set local variables
in_features = "CallsForService"
out_feature_class = "80_20_streets"
comp_features = "city_centerlines"
out_fields = ["STREET_NAME", "L_ADDR_NUM", "R_ADDR_NUM"]
# Run Eighty Twenty Analysis
arpcy.ca.EightyTwentyAnalysis(in_features,
out_feature_class,
in_comparison_features=comp_features,
out_fields=out_fields)
環境
ライセンス情報
- Basic: Yes
- Standard: Yes
- Advanced: Yes