概要
一連の距離の空間的自己相関を計測し、必要に応じて、これらの距離とそれに対応する Z スコアの折れ線グラフを作成します。Z スコアは、空間クラスタリングの強度を表し、統計的に有意な Z スコアのピークは、クラスタリングを促進する空間プロセスが最も顕著である距離を表します。これらの距離のピークは、多くの場合、[距離バンドまたは距離半径] パラメーターを持つツールで使用する際に適した値となります。
図
使用法
-
このツールを使用すると、[ホット スポット分析 (Hot Spot Analysis)] ツールや [ポイント密度 (Point Density)] ツールなど、[距離の閾値] と [半径] パラメーターを持つツールで、これらのパラメーターに適切な値を選択できます。
-
[インクリメンタル空間的自己相関 (Incremental Spatial Autocorrelation)] ツールは、一連の距離の増分の空間的自己相関を計測して、レポートします。それぞれの距離の増分、関連付けられた Moran インデックス、期待されるインデックス、分散、Z スコア、p 値に対して実行されます。[結果] ウィンドウからメッセージ エントリを右クリックして、[表示] を選択すると、これらの値にアクセスできます。このツールは、モデルやスクリプト (たとえば、以下のサンプル スクリプトを参照) で使用できるように、Z スコアの最初のピークと最大ピークを出力値として渡します。
-
統計的に有意なピークが複数存在する場合、クラスタリングはそれぞれの距離で顕著に表れます。対象となる分析のスケールに最適な距離のピークを選択します。これは多くの場合、最初の統計的に有意なピークになります。
-
入力フィールドにはさまざまな値を含めなくてはなりません。この統計計算では、分析する変数に変異が存在する必要があります。たとえば、入力値がすべて 1 の場合、解は存在しません。このツールを使用してインシデント データの空間パターンを分析する場合は、インシデント データの集約を検討してください。
-
[入力フィーチャクラス] が投影されていない場合 (つまり、座標が、度、分、および秒で与えられた場合)、または出力座標系が地理座標系に設定された場合、弦の測定値を使用して距離が計算されます。弦距離の測定値が使用されるのは、少なくとも互いに約 30° の範囲内のポイントに対して、すばやく算出され、実際の測地距離に非常に近い推定値が得られるという理由からです。弦距離は、扁平回転楕円体に基づいています。地球の表面上の 2 点が与えられた場合、2 点間の弦の距離は、3 次元の地球内部を通過して 2 点を接続するラインの長さになります。弦距離は、メートル単位でレポートされます。
-
弦距離を解析で使用するときに、[開始距離] および [距離の増分] パラメーターを指定する場合、メートル単位で指定する必要があります。
-
ArcGIS 10.2.1 より前は、選択したパラメーターおよび環境設定によって、地理座標 (度、分、秒) を使用して計算が実行される場合、警告メッセージが表示されていました。この警告は、距離の計算を正確に行うために、投影座標系にデータを投影変換することを薦めるメッセージでした。このツールは、10.2.1 以降、地理座標計算が必要なときに、必ず弦距離を計算するようになりました。
-
ライン フィーチャとポリゴン フィーチャの場合は、距離の計算にフィーチャの重心が使用されます。マルチポイント、ポリライン、または複数のパートを持つポリゴンの場合は、すべてのフィーチャ パートの加重平均中心を使用して重心が計算されます。加重は、ポイント フィーチャの場合は 1、ライン フィーチャの場合は長さ、ポリゴン フィーチャの場合は面積です。
-
マップ レイヤーを使用して、入力フィーチャクラスを指定できます。解析対象として指定したレイヤーの中で何らかのフィーチャが選択されている場合、選択されているフィーチャだけが解析の対象となります。
-
ポリゴン フィーチャの場合は、ほぼ常に [行を標準化] パラメーターに ROW を選択することができます。[行の標準化] を行うと、解析対象の変数の実際の空間分布を反映するのではなく、各フィーチャの近傍の数が集約方式またはサンプリング プロセスの関数になるときに、偏りが緩和されます。
-
[開始距離] を指定しない場合、データセット内の各フィーチャが少なくとも 1 つの近隣フィーチャを持つことができる最低の距離がデフォルトの値になります。データセットに地理的な外れ値が含まれる場合、これが最も適切な開始距離にならない可能性があります。
-
[距離の増分] を指定しない場合、平均最近隣距離または (Td - B) / I のうちの小さいほうが使用されます。Td は最大の閾値距離、B は [開始距離]、I は [距離バンド数] を表します。このアルゴリズムによって、必ず指定した [距離バンド数] に対して計算が実行され、また、一部のフィーチャで、それ以外のすべてまたはほとんどすべてのフィーチャが近隣フィーチャとして考慮されてしまうほど、最大距離バンドの数が大きくなることを防ぐことができます。
-
指定された [開始距離] および [距離の増分] が最大閾値距離よりも大きい距離バンドになる場合、[距離の増分] は自動的に小さくなります。この調整を避けるには、[距離の増分] を小さくするか、指定された [距離バンド数] を小さくします。
-
このツールを実行すると、メモリ不足が発生する可能性があります。一般に、[開始距離] と [距離の増分]、またはそのいずれかを指定した結果、フィーチャが多数の近隣フィーチャを持った場合に、メモリ不足が発生します。通常は、フィーチャが数千もの近隣フィーチャを持つような空間リレーションシップは作成しません。[距離の増分] の値を小さくし、一時的に地理的な外れ値を削除して、より小さい [開始距離] の値から開始できるようにします。
-
[開始距離] と [距離の増分] をツールに計算させる場合でも、データセットのサイズが大きい場合は処理時間が長くなることがあります。以下のとおりに実行すると性能を改善できます。
- 一時的に地理的な外れ値を削除します。
- すべてのフィーチャに対して分析を実行するのではなく、分析範囲の代表的部分からフィーチャを選択し、それらのフィーチャに対してのみ分析を実行します。
- データセットからフィーチャのサンプルをランダムに選択し、それらのサンプル フィーチャに対してのみ分析を実行します。
-
距離は常に、[出力データの座標系] 環境設定に基づきます。[出力データの座標系] 環境のデフォルト設定は、[入力データと同様] です。入力フィーチャは、分析の前に、出力データの座標系に投影変換されます。
-
オプションの [出力テーブル] には、各反復での距離値、Moran's I インデックス値、期待される Moran's I インデックス値、分散、Z スコア、p 値が含まれます。ピークでは Z スコア値が増加し、その後 Z スコア値が減少します。たとえば、このツールで、50、100、150 メートルの距離に対して Z スコアがそれぞれ 2.95、3.68、3.12 となる場合、ピークは 100 メートルになります。
-
オプションの [出力レポート ファイル] は PDF ファイルで作成され、[結果] ウィンドウからファイル名をダブルクリックするとアクセスできます。
-
このツールでは、必要に応じて結果を要約している PDF ファイルを作成することもできます。PDF ファイルは、カタログ ウィンドウに自動的に表示されません。PDF ファイルをカタログに表示するには、ArcCatalog アプリケーションを開き、[カスタマイズ] メニュー オプションを選択し、[ArcCatalog オプション] をクリックし、[ファイル タイプ] タブを選択します。[新規タイプ] ボタンをクリックし、下に示すように [ファイル拡張子] に [PDF] を指定します。
-
アラビア語や右から左に記述するその他の言語の言語パッケージで構成されたコンピューターでは、PDF [出力レポート ファイル] で文字の欠落とフォーマットの問題が発生することがあります。これらの問題は、この記事で対処されています。
-
Z スコアのピークが特定できない場合、最初のピークと最大ピークの出力パラメーターは空白を返します。
-
Python スクリプトでこのツールを使用すると、実行されたツールから返される結果のオブジェクトの出力は次のようになります。
位置 説明 データ タイプ 0
最初のピーク
Double
1
最大ピーク
Double
構文
arcpy.stats.IncrementalSpatialAutocorrelation(Input_Features, Input_Field, Number_of_Distance_Bands, {Beginning_Distance}, {Distance_Increment}, {Distance_Method}, {Row_Standardization}, {Output_Table}, {Output_Report_File})
パラメーター | 説明 | データ タイプ |
Input_Features | 空間的自己相関が一連の距離に対して計測されるフィーチャクラスです。 | Feature Layer |
Input_Field | 空間的自己相関の評価時に使用される数値フィールドです。 | Field |
Number_of_Distance_Bands | 近傍サイズを増やしてデータセットの空間的自己相関を分析する回数です。開始ポイントと増やすサイズは、それぞれ Beginning_Distance パラメーターと Distance_Increment パラメーターで指定します。 | Long |
Beginning_Distance (オプション) | 空間的自己相関分析を開始する距離で、ここを起点として距離が増やされます。このパラメーターの値は、[出力座標系] 環境設定の単位で入力する必要があります。 | Double |
Distance_Increment (オプション) | 繰り返し実行の後に増やす距離です。分析で使用する距離は Beginning_Distance で指定した距離から始まり、Distance_Incrementで指定した値だけ増やされます。このパラメーターの値は、[出力座標系] 環境設定の単位で入力する必要があります。 | Double |
Distance_Method (オプション) | 各フィーチャから隣接フィーチャまでの距離の計算方法を指定します。
| String |
Row_Standardization (オプション) | 設計のサンプリングや適用される集約方式のためにフィーチャの分布に偏りがあると考えられる場合は、行を標準化することを推奨します。
| Boolean |
Output_Table (オプション) | 作成されるテーブルで、各距離バンドと関連付けられた Z スコアの結果が記入されています。 | Table |
Output_Report_File (オプション) | 作成される PDF ファイルで、結果をまとめた折れ線グラフが含まれています。 | File |
派生した出力
名前 | 説明 | データ タイプ |
First_Peak | 最初のピークの Z スコア。 | Double |
Max_Peak | 最大のピークの Z スコア。 | Double |
コードのサンプル
IncrementalSpatialAutocorrelation (インクリメンタル空間的自己相関) の例 1 (Python ウィンドウ)
次の Python ウィンドウ スクリプトは、IncrementalSpatialAutocorrelationツールの使用方法を示しています。
import arcpy, os
import arcpy.stats as SS
arcpy.env.workspace = r"C:\ISA"
SS.IncrementalSpatialAutocorrelation("911CallsCount.shp", "ICOUNT", "20", "", "", "EUCLIDEAN",
"ROW_STANDARDIZATION", "outTable.dbf", "outReport.pdf")
IncrementalSpatialAutocorrelation (インクリメンタル空間的自己相関) の例 2 (スタンドアロン スクリプト)
次のスタンドアロン Python スクリプトは、IncrementalSpatialAutocorrelation ツールの使用方法を示しています。
# Hot Spot Analysis of 911 calls in a metropolitan area
# using the Incremental Spatial Autocorrelation and Hot Spot Analysis Tool
# Import system modules
import arcpy
import os
import arcpy.stats as SS
# Set property to overwrite existing output, by default
arcpy.env.overwriteOutput = True
# Local variables
workspace = r"C:\ISA"
try:
# Set the current workspace (to avoid having to specify the full path to the feature classes each time)
arcpy.env.workspace = workspace
# Copy the input feature class and integrate the points to snap together at 30 feet
# Process: Copy Features and Integrate
cf = arcpy.CopyFeatures_management("911Calls.shp", "911Copied.shp","#", 0, 0, 0)
integrate = arcpy.Integrate_management("911Copied.shp #", "30 Feet")
# Use Collect Events to count the number of calls at each location
# Process: Collect Events
ce = SS.CollectEvents("911Copied.shp", "911Count.shp")
# Use Incremental Spatial Autocorrelation to get the peak distance
# Process: Incremental Spatial Autocorrelation
isa = SS.IncrementalSpatialAutocorrelation(ce, "ICOUNT", "20", "", "", "EUCLIDEAN",
"ROW_STANDARDIZATION", "outTable.dbf", "outReport.pdf")
# Hot Spot Analysis of 911 Calls
# Process: Hot Spot Analysis (Getis-Ord Gi*)
distance = isa.getOutput(2)
hs = SS.HotSpots(ce, "ICOUNT", "911HotSpots.shp", "Fixed Distance Band",
"Euclidean Distance", "None", distance, "", "")
except arcpy.ExecuteError:
# If an error occurred when running the tool, print out the error message.
print(arcpy.GetMessages())
環境
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい