最適化ホット スポット分析 (Optimized Hot Spot Analysis) (空間統計)

サマリー

インシデント ポイントまたは重み付きフィーチャ (ポイントまたはポリゴン) に基づいて、Getis-Ord Gi* 統計を使用し、統計的に有意なホット スポットとコールド スポットのマップを作成します。 最適な結果を得るために、入力フィーチャクラスの特性が評価されます。

最適化ホット スポット分析ツールの詳細

最適化ホット スポット分析ツールの図

使用法

  • このツールは、統計的に有意な高い値および低い値の空間クラスター (ホット スポットとコールド スポット) を特定します。 自動的にインシデント データが集約され、適切な分析のスケールが決定され、多重検定と空間依存性の両方に対して補正されます。 このツールは、最適なホット スポット分析結果が得られる設定を決めるために、データを調べます。 これらの設定を完全に制御したい場合は、代わりに [ホット スポット分析 (Hot Spot Analysis)] ツールを使用してください。

    注意:

    インシデント データは、イベント (犯罪、交通事故など) またはオブジェクト (樹木、店舗など) を表すポイントです。これらのポイントでは、各ポイントに関連付けられて測定される属性ではなく、インシデント データの有無に焦点が当てられます。

  • 最適なホット スポット分析結果を得るために使用された、計算された設定は、ツールの実行中にメッセージとしてレポートされます。 関連するワークフローとアルゴリズムが、「最適化ホット スポット分析 (Optimized Hot Spot Analysis) の詳細」で説明されています。

  • このツールは、[入力フィーチャクラス] の各フィーチャの Z スコア、p 値、および信頼度ビン (Gi_Bin) を含む新しい [出力フィーチャクラス] を作成します。 また、フィールド (NNeighbors) に、各フィーチャが計算に使用した近隣の数が含められます。

  • このツールの出力には、分析する変数 ([分析フィールド] または各ポリゴン内のインシデント数のいずれか) の値をチャート化するヒストグラムが含まれます。 このチャートにアクセスするには、[コンテンツ] ウィンドウの [チャート別にリスト] タブ チャート別にリスト を選択します。

  • Gi_Bin フィールドは、統計的に有意なホット スポットとコールド スポットを特定し、FDR (False Discovery Rate) 補正を使用して多重検定空間依存性に対して補正されます。 +/-3 ビンのフィーチャ (Gi_Bin の値が +3 または -3 のフィーチャ) は、99% の信頼度で統計的に有意です。+/-2 ビンのフィーチャは、95% の信頼度を反映します。+/-1 ビンのフィーチャは、90% の信頼度を反映します。Gi_Bin フィールドが 0 のフィーチャのクラスターは、統計的に有意ではありません。

  • Z スコアおよび p 値のフィールドは、どの種類の FDR (False Discovery Rate) 補正も反映しません。 Z スコアと p 値の詳細については、「Z スコアとは、 p 値とは」をご参照ください。

  • [入力フィーチャクラス] が投影されていない場合 (つまり、座標が、度、分、および秒で与えられた場合)、または出力座標系地理座標系に設定された場合、弦の測定値を使用して距離が計算されます。 弦距離の測定値が使用されるのは、少なくとも互いに約 30° の範囲内のポイントに対して、すばやく算出され、実際の測地距離に非常に近い推定値が得られるという理由からです。 弦距離は、扁平回転楕円体に基づいています。 地球の表面上の 2 点が与えられた場合、2 点間の弦の距離は、3 次元の地球内部を通過して 2 点を接続するラインの長さになります。 弦距離は、メートル単位でレポートされます。

    注意:

    分析範囲が 30°を越えて広がる場合、必ずデータを投影してください。 30°を超える場合、弦距離は測地距離の良好な推定値にはなりません。

  • 入力フィーチャとして、ポイントまたはポリゴンを指定できます。 ポリゴンの場合、[分析フィールド] は必須です。

  • [分析フィールド] を指定する場合、さまざまな値を含める必要があります。 この統計計算では、分析する変数に変異が存在する必要があります。たとえば、入力値がすべて 1 の場合、解は存在しません。

  • このツールは、[分析フィールド] で指定された、サンプリングされたデータを含むあらゆるデータ (ポイントまたはポリゴン) を適切に処理できます。 実際、このツールは、オーバーサンプリングが存在する場合でも効果的であり、信頼できます。 フィーチャの数が多い場合 (オーバーサンプリング)、ツールは、正確で信頼できる結果を計算するための多くの情報を得ることができます。 フィーチャの数が少ない場合 (アンダーサンプリング) でも、ツールは、正確で信頼できる結果を生成するために、可能なことをすべて実行します。ただし、処理される情報は少なくなります。

    このツールが内部で使用する Getis-Ord Gi* 統計は漸近正規性を持つため、歪みのあるデータが [分析フィールド] に含まれる場合でも、結果は信頼できます。

  • ポイント データでは、各ポイント フィーチャに関連付けられたデータ値の解析に関心がある場合があります。その場合、[分析フィールド] を指定します。 その他のケースでは、ポイントの位置またはポイント インシデントの空間パターン (クラスタリング) を評価することのみが必要になります。 [分析フィールド] を指定するかどうかは、質問の内容によって変わります。

    • [分析フィールド] を使用してポイント フィーチャを分析することで、「高い/低い値のクラスターはどこか」のような質問に答えることができます。
    • 選択する分析フィールドは以下のいずれかを表します。
      • 個数 (交差点での交通事故件数など)
      • 比率 (都市の失業率など。ここで各都市は、ポイント フィーチャで表されます)
      • 平均 (学校間のテスト スコアの平均計算など)
      • インデックス (郡の車の販売代理店に関する顧客満足度など)
    • [分析フィールド] がない場合にポイント フィーチャを分析することで、ポイントのクラスタリングが異常 (統計的に有意な程度) に密集しているかまばらな場所を識別できます。 この種の分析は、「多くのポイントが存在する場所はどこか」、 「ポイントが非常に少ない場所はどこか」のような質問に答えることができます。
  • [分析フィールド] を指定しない場合、このツールは、分析フィールドとして使用するポイント数を得るために、ポイントを集約します。 以下の 3 種類の集約方法を指定できます。

    • フィッシュネット グリッド内のインシデント数および六角形グリッド内のインシデント数の場合、適切なポリゴン セルのサイズが計算され、フィッシュネットまたは六角形のポリゴン メッシュの作成に使用されます。これは、インシデント ポリゴン上に配置され、各ポリゴン セル内のポイント数が計算されます。 [インシデント範囲境界ポリゴン] フィーチャ レイヤーを指定しない場合、ポイント数がゼロのセルが削除され、残りのセルのみが分析されます。 境界ポリゴン フィーチャ レイヤーを指定した場合、境界ポリゴンに含まれるすべてのセルが保持されて、分析されます。 各ポリゴン セルのポイント数は、分析フィールドとして使用されます。
      注意:

      一般的に使用される集約形状はフィッシュネット グリッドですが、特定の解析では、六角形のオプションの方が適している場合があります。

    • [集約ポリゴン内のインシデント数] の場合、[インシデント集約境界ポリゴン] フィーチャ レイヤーを指定する必要があります。 各ポリゴンに含まれるポイント インシデント数が計算されます。関連するカウントを含めたこれらのポリゴンが、分析されます。 [集約ポリゴン内のインシデント数] オプションは、ポイントが行政地名 (地域、群、学区など) に関連する場合に適した集約方法です。 比較操作を強化するために、複数の分析にまたがって分析範囲を固定したい場合にも、このオプションを使用できます。
    • [加重ポイントの作成のため近傍インシデントをスナップ] の場合、スナップ距離が計算され、近傍インシデント ポイントの集約に使用されます。 集約された各ポイントには、一緒にスナップされたインシデントの数を反映するカウントが与えられます。 次に、集約されたポイントは、インシデント数を分析フィールドとして使用して分析されます。 [加重ポイントの作成のため近傍インシデントをスナップ] は、多くのポイントが同じ位置または近い位置にあり、元のポイント データの空間パターンの特徴を維持したい場合に適した集約方法です。

    注意:
    多くの場合、[加重ポイントの作成のため近傍インシデントをスナップ][フィッシュネット グリッド内のインシデント数] および [六角形グリッド内のインシデント数] を試してみて、どちらの結果が元のポイント データの空間パターンをよく反映しているかを確認したほうがよいでしょう。 フィッシュネットおよび六角形による方法は、ポイント インシデントのクラスターを人為的に分割しますが、人によっては、重み付きポイントの出力よりも、この出力の方が解釈しやすいことがあります。 最も一般的に使用される集約形状はフィッシュネット グリッドですが、特定の解析では、六角形のオプションの方が適している場合があります。

    注意:

    [分析フィールド] を指定しないポイント データの分析は、すべて既知のポイント インシデントが存在し、分析するポイントの分布に偏りがないことが確実である場合にのみ意味があります。 サンプリングされたデータでは、ほとんどの場合 (サンプリング方法の空間パターンに特に興味がなければ)、[分析フィールド] を含めます。

  • インシデント データ集約方法として [フィッシュネット グリッド内のインシデント数] または [六角形グリッド内のインシデント数] を選択した場合、オプションで [インシデント範囲境界ポリゴン] を指定できます。 境界ポリゴンを指定しないと、ツールは、インシデントのない場所をゼロに設定して、インシデントが発生する可能性があるが発生していないことを示すべきかどうかを判断できず、インシデントが発生する可能性がない場所を分析から削除するべきかどうかを判断することもできません。 その結果、境界ポリゴンを指定しない場合、1 つ以上のインシデントを含むセルのみが分析の対象として保持されます。 このような動作を望まない場合は、境界ポリゴン内のすべての場所を確実に保持するように、[インシデント範囲境界ポリゴン] フィーチャ レイヤーを指定できます。 インシデントを含まないフィッシュネットまたは六角形のセルには、インシデント数としてゼロが与えられます。

  • インシデント範囲境界ポリゴンにもインシデント集約境界ポリゴンにも含まれないインシデントは、すべて分析から除外されます。

  • グリッドのセル サイズと分析のスケールに最適なデフォルト値をツールで選択する代わりに、[設定を上書き] を使用して、解析の [セル サイズ] または [距離バンド] を設定できます。

  • [セル サイズ] オプションを使用すると、ポイント データの集約に使用されるグリッドのサイズを設定できます。 たとえば、フィッシュネット グリッドの各セルを 50 x 50 メートルにしたりできます。 六角形に集約している場合、[セル サイズ] は各六角形の高さになり、生成される六角形の幅は、高さの 2 倍を 3 の平方根で除算した値になります。

    六角形とフィッシュネット グリッドのセル サイズ

  • 時空間ホット スポットを特定する場合は、[空間加重マトリックスの生成 (Generate Spatial Weights Matrix)] ツールおよび [ホット スポット分析 (Hot Spot Analysis (Getis-Ord Gi*)] ツールまたは [時空間パターン マイニング] ツール使用する必要があります。 時空間クラスター分析については、「時空間クラスター分析」および「時空間パターン マイニング」のトピックをご参照ください。

  • マップ レイヤーを使用して、入力フィーチャクラスを指定できます。解析対象として指定したレイヤーの中で何らかのフィーチャが選択されている場合、選択されているフィーチャだけが解析の対象となります。

  • [出力フィーチャ] レイヤーは自動的にコンテンツ ウィンドウに追加され、Gi_Bin フィールドにはデフォルトのレンダリングが適用されます。 ホットからコールドへのレンダリングは、<ArcGIS Pro>\Resources\ArcToolBox\Templates\Layers にあるレイヤー ファイルによって定義されます。 必要に応じて、[レイヤーのシンボル情報を適用 (Apply Symbology From Layer)] ツールを使用して、デフォルトのレンダリングを再適用できます。

  • 注意:

    シェープファイルを使用するときは、NULL 値を格納できないため、注意が必要です。シェープファイル以外の入力からシェープファイルを作成するツールまたはその他の方法では、NULL 値がゼロとして格納または解釈される場合があります。場合によっては、NULL 値はシェープファイルに非常に大きな負の値として格納されます。この場合、予期せぬ結果に至ることがあります。詳細については、「ジオプロセシングでのシェープファイル出力の注意事項」をご参照ください。

パラメーター

ラベル説明データ タイプ
入力フィーチャ

ホット スポット分析が実行されるポイント フィーチャクラスまたはポリゴン フィーチャクラス。

Feature Layer
出力フィーチャ

Z スコア、p 値、および Gi_Bin の結果を受け取る出力フィーチャクラス。

Feature Class
分析フィールド
(オプション)

評価する数値フィールド (インシデント数、犯罪率、テストのスコアなど)。

Field
インシデント データ集約方法
(オプション)

インシデント ポイント データから分析するための重み付きフィーチャの作成に使用される集約方法。

  • フィッシュネット グリッド内のインシデント数フィッシュネット ポリゴン メッシュによってインシデント ポイント データがオーバーレイされ、各ポリゴン セル内のインシデントの数がカウントされます。 [インシデント範囲境界ポリゴン] パラメーターで境界ポリゴンを指定しない場合、1 つ以上のインシデントを含むセルのみが分析で使用されます。そうでない場合、境界ポリゴン内のすべてのセルが分析されます。
  • 六角形グリッド内のインシデント数六角形ポリゴン メッシュによってインシデント ポイント データがオーバーレイされ、各ポリゴン セル内のインシデントの数がカウントされます。 [インシデント範囲境界ポリゴン] パラメーターで境界ポリゴンを指定しない場合、1 つ以上のインシデントを含むセルのみが分析で使用されます。そうでない場合、境界ポリゴン内のすべてのセルが分析されます。
  • 集約ポリゴン内のインシデント数[インシデント集約境界ポリゴン] パラメーターで、インシデント ポイント データをオーバーレイする集約ポリゴンを指定します。 各ポリゴン内のインシデントが計算されます。
  • 加重ポイントの作成のため近傍インシデントをスナップ近傍のインシデントが一緒に集約されて、単一の重み付きポイントが作成されます。 各ポイントの重みは、その場所で集約されたインシデントの数です。
String
インシデント範囲境界ポリゴン
(オプション)

インシデント入力フィーチャが発生する可能性のある場所を定義するポリゴン フィーチャクラス。

Feature Layer
インシデント集約境界ポリゴン
(オプション)

ポリゴン フィーチャごとのインシデント数を取得するために、インシデント入力フィーチャの集計に使用されるポリゴン。

Feature Layer
密度サーフェス
(オプション)

[密度サーフェス] パラメーターは無効であり、下位互換性を維持するためのツール パラメーターとしてのみ残されています。 重み付けされたポイントの密度サーフェスが必要な場合は、[カーネル密度 (Kernel Density)] ツールを使用できます。

Raster Dataset
セル サイズ
(オプション)

[入力フィーチャ] の集約に使用されるグリッド セルのサイズ。 六角形グリッドに集約している場合、この距離は、六角形ポリゴンを構築するための高さとして使用されます

Linear Unit
距離バンド
(オプション)

分析対象の近傍の空間範囲。 この値は、ローカル クラスタリングを評価する場合に一緒に分析されるフィーチャを決定します。

Linear Unit

arcpy.stats.OptimizedHotSpotAnalysis(Input_Features, Output_Features, {Analysis_Field}, {Incident_Data_Aggregation_Method}, {Bounding_Polygons_Defining_Where_Incidents_Are_Possible}, {Polygons_For_Aggregating_Incidents_Into_Counts}, {Density_Surface}, {Cell_Size}, {Distance_Band})
名前説明データ タイプ
Input_Features

ホット スポット分析が実行されるポイント フィーチャクラスまたはポリゴン フィーチャクラス。

Feature Layer
Output_Features

Z スコア、p 値、および Gi_Bin の結果を受け取る出力フィーチャクラス。

Feature Class
Analysis_Field
(オプション)

評価する数値フィールド (インシデント数、犯罪率、テストのスコアなど)。

Field
Incident_Data_Aggregation_Method
(オプション)

インシデント ポイント データから分析するための重み付きフィーチャの作成に使用される集約方法。

  • COUNT_INCIDENTS_WITHIN_FISHNET_POLYGONSフィッシュネット ポリゴン メッシュによってインシデント ポイント データがオーバーレイされ、各ポリゴン セル内のインシデントの数がカウントされます。 Bounding_Polygons_Defining_Where_Incidents_Are_Possible パラメーターで境界ポリゴンを指定しない場合、1 つ以上のインシデントを含むセルのみが分析で使用されます。そうでない場合、境界ポリゴン内のすべてのセルが分析されます。
  • COUNT_INCIDENTS_WITHIN_HEXAGON_POLYGONS六角形ポリゴン メッシュによってインシデント ポイント データがオーバーレイされ、各ポリゴン セル内のインシデントの数がカウントされます。 Bounding_Polygons_Defining_Where_Incidents_Are_Possible パラメーターで境界ポリゴンを指定しない場合、1 つ以上のインシデントを含むセルのみが分析で使用されます。そうでない場合、境界ポリゴン内のすべてのセルが分析されます。
  • COUNT_INCIDENTS_WITHIN_AGGREGATION_POLYGONSPolygons_For_Aggregating_Incidents_Into_Counts パラメーターで、インシデント ポイント データをオーバーレイする集約ポリゴンを指定します。 各ポリゴン内のインシデントが計算されます。
  • SNAP_NEARBY_INCIDENTS_TO_CREATE_WEIGHTED_POINTS近傍のインシデントが一緒に集約されて、単一の重み付きポイントが作成されます。 各ポイントの重みは、その場所で集約されたインシデントの数です。
String
Bounding_Polygons_Defining_Where_Incidents_Are_Possible
(オプション)

インシデント Input_Features が発生する可能性のある場所を定義するポリゴン フィーチャクラス。

Feature Layer
Polygons_For_Aggregating_Incidents_Into_Counts
(オプション)

ポリゴン フィーチャごとのインシデント数を取得するために、インシデント Input_Features の集計に使用されるポリゴン。

Feature Layer
Density_Surface
(オプション)

Density_Surface パラメーターは無効であり、下位互換性を維持するためのツール パラメーターとしてのみ残されています。 重み付けされたポイントの密度サーフェスが必要な場合は、[カーネル密度 (Kernel Density)] ツールを使用できます。

Raster Dataset
Cell_Size
(オプション)

Input_Features の集約に使用されるグリッド セルのサイズ。 六角形グリッドに集約している場合、この距離は、六角形ポリゴンを構築するための高さとして使用されます

Linear Unit
Distance_Band
(オプション)

分析対象の近傍の空間範囲。 この値は、ローカル クラスタリングを評価する場合に一緒に分析されるフィーチャを決定します。

Linear Unit

コードのサンプル

OptimizedHotSpotAnalysis の例 1 (Python ウィンドウ)

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

import arcpy
arcpy.env.workspace = r"C:\OHSA"
arcpy.OptimizedHotSpotAnalysis_stats("911Count.shp", "911OptimizedHotSpots.shp", 
                                     "#", "SNAP_NEARBY_INCIDENTS_TO_CREATE_WEIGHTED_POINTS")
OptimizedHotSpotAnalysis の例 2 (スタンドアロン Python スクリプト)

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

# Analyze the spatial distribution of 911 calls in a metropolitan area

# Import system modules
import arcpy

# Set property to overwrite existing output, by default
arcpy.env.overwriteOutput = True

# Local variables...
workspace = r"C:\OHSA\data.gdb"

try:
    # Set the current workspace (to avoid having to specify the full path to 
    # the feature classes each time)
    arcpy.env.workspace = workspace

    # Create a polygon that defines where incidents are possible  
    # Process: Minimum Bounding Geometry of 911 call data
    arcpy.management.MinimumBoundingGeometry("Calls911", "Calls911_MBG", 
                                             "CONVEX_HULL", "ALL", "#", 
                                             "NO_MBG_FIELDS")

    # Optimized Hot Spot Analysis of 911 call data using fishnet aggregation method with a bounding polygon of 911 call data
    # Process: Optimized Hot Spot Analysis 
    ohsa = arcpy.stats.OptimizedHotSpotAnalysis("Calls911", "Calls911_ohsaFishnet", 
                                                "#", "COUNT_INCIDENTS_WITHIN_FISHNET_POLYGONS", 
                                                "Calls911_MBG") 

except arcpy.ExecuteError:
    # If any error occurred when running the tool, print the messages
    print(arcpy.GetMessages())

環境

特殊なケース

出力座標系

フィーチャ ジオメトリは分析に先立って出力座標系に投影されます。すべての数学的演算は、出力座標系の空間参照に基づいて実行されます。[出力データの座標系] が度、分、および秒に基づく場合、測地距離は弦距離を使用して推定されます。