インクリメンタル空間的自己相関(Incremental Spatial Autocorrelation) (空間統計解析)
サマリ
一連の距離の空間的自己相関を計測し、必要に応じて、これらの距離とそれに対応する Z スコアの折れ線グラフを作成します。Z スコアは、空間クラスタ化の強度を表し、統計的に有意な Z スコアのピークは、クラスタ化を促進する空間プロセスが最も顕著である距離を表します。これらの距離のピークは、多くの場合、[距離バンドまたは距離半径] パラメータを持つツールで使用する際に適した値となります。
図
使用法
-
このツールを使用すると、[ホット スポット分析(Hot Spot Analysis)] ツールや [点密度(Point Density)] ツールなど、[距離の閾値] と [半径] パラメータを持つツールで、これらのパラメータに適切な値を選択できます。
-
[インクリメンタル空間的自己相関(Incremental Spatial Autocorrelation)] ツールは、一連の距離の増分の空間的自己相関を計測して、レポートします。それぞれの距離の増分、関連付けられた Moran インデックス、期待されるインデックス、分散、Z スコア、p 値に対して実行されます。[結果] ウィンドウからメッセージ エントリを右クリックして、[表示] を選択すると、これらの値にアクセスできます。このツールは、モデルやスクリプト(たとえば、以下のサンプル スクリプトを参照)で使用できるように、Z スコアの最初のピークと最大ピークを出力値として渡します。
-
統計的に有意なピークが複数存在する場合、クラスタ化はそれぞれの距離で顕著に表れます。対象となる分析のスケールに最適な距離のピークを選択します。これは多くの場合、最初の統計的に有意なピークになります。
-
入力フィールドにはさまざまな値を含めなくてはなりません。この統計計算では、分析する変数に変異が存在する必要があります。たとえば、入力値がすべて 1 の場合、解は存在しません。このツールを使用してインシデント データの空間パターンを分析する場合は、インシデント データの集約を検討してください。
-
[入力フィーチャクラス] が投影されていない場合(つまり、座標が、度、分、および秒で与えられた場合)、または出力座標系が地理座標系に設定された場合、弦の測定値を使用して距離が計算されます。少なくとも互いに約 30°の範囲内のポイントに対して、すばやく計算することができ、真の測地距離の非常に優れた推定値が得られるため、弦距離の測定値が使用されます。弦距離は、地球の真の扁平楕円体形状ではなく、球体に基づいて計算されます。地球の表面上の 2 点が与えられた場合、2 点間の弦の距離は、3 次元の地球内部を通過して 2 点を接続するラインの長さになります。弦距離は、メートル単位でレポートされます。
注意:分析範囲が 30°を越えて広がる場合、必ずデータを投影変換してください。30°を超える場合、弦距離は測地距離の良好な推定値にはなりません。
-
弦距離を解析で使用するときに、[開始距離] および [距離の増分] パラメータを指定する場合、メートル単位で指定する必要があります。
-
ArcGIS 10.2.1 より前は、選択したパラメータおよび環境設定によって、地理座標(度、分、秒)を使用して計算が実行される場合、警告メッセージが表示されていました。この警告は、距離の計算を正確に行うために、投影座標系にデータを投影変換することを薦めるメッセージでした。このツールは、10.2.1 以降、地理座標計算が必要なときに、必ず弦距離を計算するようになりました。
注意:この変更のため、モデルが ArcGIS 10.2.1 よりも前に作成された場合、およびモデルにハードコードされた地理座標系パラメータ値が含まれている場合、このツールを組み込んだモデルの変更が必要になる可能性が、わずかにあります。たとえば、距離パラメータが 0.0025°のように設定されている場合、その固定値を度からメートルに変換し、モデルを再保存する必要があります。
-
ライン フィーチャとポリゴン フィーチャの場合は、距離の計算にフィーチャの重心が使用されます。マルチポイント、ポリライン、または複数のパートを持つポリゴンの場合は、すべてのフィーチャ パートの加重平均中心を使用して重心が計算されます。加重は、ポイント フィーチャの場合は 1、ライン フィーチャの場合は長さ、ポリゴン フィーチャの場合は面積です。
-
マップ レイヤを使用して、入力フィーチャクラスを指定できます。解析対象として指定したレイヤの中で何らかのフィーチャが選択されている場合、選択されているフィーチャだけが解析の対象となります。
-
ポリゴン フィーチャの場合は、ほぼ常に[行を標準化] パラメータに [行] を選択することができます。[行の標準化] を行うと、解析対象の変数の実際の空間分布を反映するのではなく、各フィーチャの近傍の数が集約方式またはサンプリング プロセスの関数になるときに、偏りが緩和されます。
-
[開始距離] を指定しない場合、データセット内の各フィーチャが少なくとも 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] を指定します。
-
中国語または日本語の ArcGIS 言語パッケージで構成されたコンピュータでは、PDF [出力レポート ファイル] で文字の欠落とフォーマットの問題が発生することがあります。これらの問題は、フォント設定の変更により修正できます。
-
Z スコアのピークが特定できない場合、最初のピークと最大ピークの出力パラメータは空白を返します。
-
Python スクリプトでこのツールを使用すると、実行されたツールから返される結果のオブジェクトの出力は次のようになります。
Position
説明
データ タイプ
0
最初のピーク
Double
1
最大のピーク
Double
構文
パラメータ | 説明 | データ タイプ |
Input_Features |
空間的自己相関が一連の距離に対して計測されるフィーチャクラスです。 | Feature Layer |
Input_Field |
空間的自己相関の評価時に使用される数値フィールドです。 | Field |
Number_of_Distance_Bands |
近傍サイズを増やしてデータセットの空間的自己相関を分析する回数です。開始ポイントと増分サイズは、それぞれ [開始距離] パラメータと [距離の増分] パラメータで指定します。 | Long |
Beginning_Distance (オプション) |
空間的自己相関分析を開始する距離で、ここを起点として距離が増やされます。このパラメータの値は、[出力座標系] 環境設定の単位で入力する必要があります。 | Double |
Distance_Increment (オプション) |
繰り返し実行の後に増やす距離です。分析で使用する距離は [開始距離] で指定した距離から始まり、[距離の増分] で指定した値だけ増やされます。このパラメータの値は、[出力座標系] 環境設定の単位で入力する必要があります。 | Double |
Distance_Method (オプション) |
各フィーチャから隣接フィーチャまでの距離の計算方法を指定します。
| String |
Row_Standardization (オプション) |
| Boolean |
Output_Table (オプション) |
作成されるテーブルで、各距離バンドと関連付けられた Z スコアの結果が記入されています。 | Table |
Output_Report_File (オプション) |
作成される PDF ファイルで、結果をまとめた折れ線グラフが含まれています。 | File |
コードのサンプル
次の 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")
次のスタンドアロン 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, os
import arcpy.stats as SS
# Set geoprocessor object property to overwrite existing output, by default
arcpy.gp.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:
# If an error occurred when running the tool, print out the error message.
print arcpy.GetMessages()
環境
- 出力データの座標系
フィーチャ ジオメトリは分析に先立って出力座標系に投影されます。すべての数学的演算は、出力座標系の空間参照に基づいて実行されます。[出力データの座標系] が度、分、および秒に基づく場合、測地距離は弦距離を使用して推定されます。