ラベル | 説明 | データ タイプ |
入力フィーチャクラス | 空間的自己相関が計算されるフィーチャクラスです。 | Feature Layer |
入力フィールド | 空間的自己相関の評価時に使用される数値フィールドです。 | Field |
レポートの生成 (オプション) | 結果の概要図を .html ファイルとして作成するかどうかを指定します。
| Boolean |
空間リレーションシップのコンセプト | フィーチャ間の空間リレーションシップをどのよう定義するかを指定します。
| String |
距離方法 | 各フィーチャから隣接フィーチャまでの距離の計算方法を指定します。
| String |
標準化 | 空間加重の標準化を適用するかどうかを指定します。 行の標準化が推奨されるのは、サンプリングの設計や指定された集約方式によってフィーチャの分布が偏る可能性があるときです。
| String |
距離バンドまたは距離の閾値 (オプション) | さまざまな逆距離オプションおよび固定距離オプションのカットオフ距離。 ターゲット フィーチャに対して指定したカットオフの外側のフィーチャは、そのフィーチャの解析では除外されます。 ただし、[無関心領域] オプションの場合、ここで指定した閾値内にあるフィーチャの影響は等しく考慮され、閾値外にあるフィーチャの影響は距離に伴って減少します。 入力する距離値は、出力座標系の値に一致している必要があります。 空間リレーションシップの逆距離のコンセプトの場合、値 0 は閾値の距離が適用されないことを示します。このパラメーターを空白のままにすると、デフォルトの閾値が計算され、適用されます。 このデフォルト値はユークリッド距離であり、すべてのフィーチャに 1 つ以上の隣接フィーチャがあることが保証されます。 このパラメーターは、ポリゴン隣接 ([隣接エッジのみ] または [隣接エッジ コーナー]) または [空間加重をファイルから取得] の空間コンセプトを選択した場合、効果がありません。 | Double |
加重マトリックス ファイル (オプション) | フィーチャ間の空間リレーションシップ、および潜在的に時系列のリレーションシップを定義するウェイトが含まれたファイルへのパス。 | File |
近傍数 (オプション) | 分析に含める近傍の数を指定する整数。 | Long |
図
使用法
[空間的自己相関分析 (Spatial Autocorrelation)] ツールは、Moran's I インデックス、期待されるインデックス、分散、Z スコア、p 値の 5 つの値を返します。 これらの値は、ツールの実行中に [ジオプロセシング] ウィンドウの下部にメッセージとして書き込まれ、モデルまたはスクリプトでの潜在的な用途のために、出力値として渡されます。 このメッセージにアクセスするには、[ジオプロセシング] ウィンドウで進行状況バーにカーソルを合わせるか、ポップアップ ボタンをクリックするか、メッセージの詳細セクションを展開します。 ジオプロセシング履歴を介して、以前に実行したツールのメッセージと詳細にアクセスすることもできます。 必要に応じて、このツールを使用して、結果の概要図を持つ HTML レポート ファイルを作成できます。 レポートへのパスは、ツールの実行パラメーターを要約するメッセージに含まれています。 このパスをクリックして、レポート ファイルを開きます。
このツールは、フィーチャの集合と関連付けられた属性に対して、明示的なパターンがクラスタリングするか、分散するか、不規則かを評価します。 Z スコアまたは p 値が統計的に有意であると、正の Moran's I インデックス値はクラスタリング傾向を示し、負の Moran's I インデックスは分散傾向を示します。
- このツールは、帰無仮説を否定できるかどうかを示す Z スコアと p 値を計算します。 この場合、帰無仮説は、フィーチャの値は空間的に相関していないというものです。
Z スコアと p 値は統計的有意性の計測値です。 これらの値は、帰無仮説を棄却するかどうかを判断するのに役立ちます。 このツールの場合、帰無仮説は、フィーチャに関連付けられた値はランダムに分布しているというものです。
[入力フィールド] パラメーターには、さまざまな値を入力する必要があります。 この統計計算では、分析する変数に変異が存在する必要があります。たとえば、入力値がすべて 1 の場合、解は存在しません。 このツールを使用してインシデント データの空間パターンを分析する場合は、インシデント データの集約を検討してください。 [最適化ホット スポット分析 (Optimized Hot Spot Analysis)] ツールを使用して、インシデント データの空間パターンを分析することもできます。
注意:
インシデント データは、イベント (犯罪や交通事故など) またはオブジェクト (樹木や店舗など) を表すポイントです。これらのポイントでは、各ポイントに関連付けられた計測済みの属性ではなく、インシデント データの有無に焦点が当てられます。
[入力フィーチャクラス] パラメーターの値が投影されていない場合 (つまり、座標が度、分、秒で示されている場合) または出力座標系環境が地理座標系に設定されている場合は、弦の測定値を使用して距離が計算されます。 弦距離の測定値が使用されるのは、少なくとも互いに約 30° の範囲内のポイントに対して、すばやく算出され、実際の測地距離に近い推定値が得られるという理由からです。 弦距離は、扁平回転楕円体に基づいています。 地球の表面上の 2 点が与えられた場合、2 点間の弦距離は、3 次元の地球内部を通過して 2 点を接続するラインの長さになります。 弦距離は、メートル単位でレポートされます。
注意:
分析範囲が 30°を超えて広がっている場合は、必ずデータを投影してください。 30°を超える場合、弦距離は測地距離の良好な推定値にはなりません。
弦距離を解析で使用する場合は、[距離バンドまたは距離の閾値] パラメーターの値をメートル単位で指定する必要があります。
ライン フィーチャとポリゴン フィーチャの場合は、距離の計算にフィーチャの重心が使用されます。 マルチポイント、ポリライン、または複数のパートを持つポリゴンの場合は、すべてのフィーチャ パートの加重平均中心を使用して重心が計算されます。 加重は、ポイント フィーチャの場合は 1、ライン フィーチャの場合は長さ、ポリゴン フィーチャの場合は面積です。
[空間リレーションシップのコンセプト] パラメーター値は、解析対象のフィーチャ間の固有のリレーションシップが反映されている必要があります。 フィーチャの空間相互作用をより現実的にモデリングできればできるほど、結果はより正確になります。 推奨事項については「空間リレーションシップのコンセプトの選択: ベスト プラクティス」で説明しています。 次に、別のヒントをいくつか紹介します。
- 固定距離バンド
デフォルトの [距離バンドまたは距離の閾値] パラメーター値は、各フィーチャが少なくとも 1 つ近傍フィーチャを持つことを保証します。 これは重要なことですが、多くの場合このデフォルトは解析に使用する最も適切な距離ではありません。 分析で適切な尺度 (距離バンド) を選択する詳細については、「距離バンドまたは (影響圏)」で説明しています。
- [逆距離] または [距離の逆二乗]
[距離バンドまたは距離の閾値] パラメーター値にゼロを入力すると、すべてのフィーチャが他のすべてのフィーチャの近隣フィーチャと見なされます。このパラメーターを空白のままにしておくと、デフォルトの距離が適用されます。
距離の加重が 1 未満の場合は、反転したときに不安定になります。 そのため、距離の 1 単位未満に分割されたフィーチャの加重は、1 に設定されます。
逆距離系のオプション ([逆距離]、[距離の逆二乗]、および [無関心領域]) の場合、一致する 2 つのポイントは、ゼロ除算を避けるためにウェイトが 1 になります。 これによりフィーチャが分析から除外されないことが保証されます。
- FIXED_DISTANCE_BAND
デフォルトの [距離バンドまたは距離の閾値] パラメーター値は、各フィーチャが少なくとも 1 つ近傍フィーチャを持つことを保証します。 これは重要なことですが、多くの場合このデフォルトは解析に使用する最も適切な距離ではありません。 分析で適切な尺度 (距離バンド) を選択する詳細については、「距離バンドまたは距離の閾値」で説明しています。
- INVERSE_DISTANCE または INVERSE_DISTANCE_SQUARED
[距離バンドまたは距離の閾値] パラメーター値にゼロを入力すると、すべてのフィーチャが他のすべてのフィーチャの近隣フィーチャと見なされます。このパラメーターを空白のままにしておくと、デフォルトの距離が適用されます。
距離の加重が 1 未満の場合は、反転したときに不安定になります。 そのため、距離の 1 単位未満に分割されたフィーチャの加重は、1 に設定されます。
逆距離オプション (INVERSE_DISTANCE、INVERSE_DISTANCE_SQUARED、および ZONE_OF_INDIFFERENCE) では、ゼロ除算を回避するために、一致する 2 つのポイントに加重 1 が与えられます。 これによりフィーチャが分析から除外されないことが保証されます。
- 固定距離バンド
Python では、このツールの派生出力には、Moran's I インデックス値、Z スコア、p 値、HTML レポート ファイルが含まれます。 たとえば、ツールの Result オブジェクトを MoranResult という変数に割り当てると、MoranResult[0] は Moran's I インデックス値、MoranResult[1] は Z スコア、MoranResult[2] は p 値、MoranResult[3] は HTML レポート ファイルのファイル パスをそれぞれ格納します。 [レポートの生成] パラメーターを使用して HTML レポート ファイルを出力しない場合、最後の派生出力は空の文字列になります。
3 次元リレーションシップや時空間リレーションシップなど、[空間リレーションシップのコンセプト] パラメーターの追加オプションは、[空間ウェイト マトリックスの生成 (Generate Spatial Weights Matrix)] ツールで使用できます。 これらの追加オプションを使用するには、解析を実行する前に空間ウェイト マトリックス ファイルを作成します。[空間リレーションシップのコンセプト] パラメーターで、[空間ウェイトをファイルから取得] オプションを使用し、[ウェイト マトリックス ファイル] パラメーターで、作成した空間ウェイト ファイルへのパスを指定します。
マップ レイヤーを [入力フィーチャクラス] パラメーターの値として指定できます。 解析対象として指定したレイヤーの中で何らかのフィーチャが選択されている場合、選択されているフィーチャだけが解析の対象となります。
[ウェイト マトリックス ファイル] パラメーターの値に .swm 拡張子を付けた場合は、[空間ウェイト マトリックスの生成 (Generate Spatial Weights Matrix)] ツールを使用して空間ウェイト マトリックス ファイルが作成されることが想定されます。それ以外の場合は、ASCII 形式の空間ウェイト マトリックス ファイルが想定されます。 場合によっては、次のタイプの空間ウェイト マトリックス ファイルのどれを使用するかに応じて動作が異なります。
- ASCII 形式の空間ウェイト マトリックス ファイル
- ウェイトはそのまま使用されます。 フィーチャ対フィーチャのリレーションシップがない場合は、ゼロとして扱われます。
- ウェイトに対して行の標準化を行うと、選択セットの解析で正しい結果が得られない場合があります。 選択セットで解析を実行するには、ASCII データをテーブルに読み込み、[空間ウェイト マトリックスの生成 (Generate Spatial Weights Matrix)] ツールで [変換テーブル] オプションを使用して、ASCII 空間ウェイト ファイルを .swm ファイルに変換します。
- SWM 形式の空間ウェイト マトリックス ファイル
- ウェイトに対して行の標準化を行うと、選択セットでウェイトが再標準化されます。それ以外の場合は、ウェイトがそのまま使用されます。
- ASCII 形式の空間ウェイト マトリックス ファイル
ASCII 形式の空間ウェイト マトリックス ファイルで解析を実行すると、メモリを大量に消費します。 5,000 を超えるフィーチャの解析で、ASCII 形式の空間ウェイト マトリックス ファイルを SWM 形式のファイルに変換する場合を考えます。 まず、ASCII ウェイトを Excel などに読み込んで表形式にします。 次に、[変換テーブル] を [空間リレーションシップのコンセプト] パラメーターの値にして、[空間ウェイト マトリックスの生成 (Generate Spatial Weights Matrix)] ツールを実行します。 出力は、SWM 形式の空間加重マトリックス ファイルになります。
ポリゴン フィーチャの場合は、[標準化] パラメーターの [行] オプションを使用します。 行の標準化を行うと、解析対象の変数の実際の空間分布を反映するのではなく、各フィーチャの近傍フィーチャの数が集約方式またはサンプリング プロセスの関数になる場合に、偏りが緩和されます。
このツールのパラメーターの詳細については、「空間リレーションシップのモデリング」をご参照ください。
注意:
このツールを実行すると、メモリ不足が発生する可能性があります。 この状況は、[空間リレーションシップのコンセプト] パラメーターと [距離バンドまたは距離の閾値] パラメーターに指定した値によって、数千個の近傍フィーチャを持つフィーチャが生成された場合に発生することがあります。 通常、すべてのフィーチャが数千個の近傍フィーチャを持つような空間リレーションシップを定義してはなりません。 すべてのフィーチャが少なくとも 1 つの近傍フィーチャを持ち、ほぼすべてのフィーチャが少なくとも 8 つの近傍フィーチャを持つようにします。
注意:
シェープファイルは NULL 値を格納できません。 別のタイプの入力からシェープファイルを作成するツールまたはその他の方法では、NULL 値がゼロとして格納または解釈される場合があります。 場合によっては、NULL 値はシェープファイルに大きい負の値として格納されます。この場合、予期しない結果につながることがあります。 詳細については、「ジオプロセシングでのシェープファイル出力の注意事項」をご参照ください。
パラメーター
arcpy.stats.SpatialAutocorrelation(Input_Feature_Class, Input_Field, {Generate_Report}, Conceptualization_of_Spatial_Relationships, Distance_Method, Standardization, {Distance_Band_or_Threshold_Distance}, {Weights_Matrix_File}, {number_of_neighbors})
名前 | 説明 | データ タイプ |
Input_Feature_Class | 空間的自己相関が計算されるフィーチャクラスです。 | Feature Layer |
Input_Field | 空間的自己相関の評価時に使用される数値フィールドです。 | Field |
Generate_Report (オプション) | 結果の概要図を .html ファイルとして作成するかどうかを指定します。
| Boolean |
Conceptualization_of_Spatial_Relationships | フィーチャ間の空間リレーションシップをどのよう定義するかを指定します。
| String |
Distance_Method | 各フィーチャから隣接フィーチャまでの距離の計算方法を指定します。
| String |
Standardization | 空間加重の標準化を適用するかどうかを指定します。 行の標準化が推奨されるのは、サンプリングの設計や指定された集約方式によってフィーチャの分布が偏る可能性があるときです。
| String |
Distance_Band_or_Threshold_Distance (オプション) | さまざまな逆距離オプションおよび固定距離オプションのカットオフ距離。 ターゲット フィーチャに対して指定したカットオフの外側のフィーチャは、そのフィーチャの解析では除外されます。 ただし、ZONE_OF_INDIFFERENCE オプションの場合、ここで指定した閾値内にあるフィーチャの影響は等しく考慮され、閾値外にあるフィーチャの影響は距離に伴って減少します。 入力する距離値は、出力座標系の値に一致している必要があります。 空間リレーションシップの逆距離のコンセプトの場合、値 0 は閾値の距離が適用されないことを示します。このパラメーターを空白のままにすると、デフォルトの閾値が計算され、適用されます。 このデフォルト値はユークリッド距離であり、すべてのフィーチャに 1 つ以上の隣接フィーチャがあることが保証されます。 このパラメーターは、ポリゴン隣接 (CONTIGUITY_EDGES_ONLY または CONTIGUITY_EDGES_CORNERS) または GET_SPATIAL_WEIGHTS_FROM_FILE の空間コンセプトを選択した場合、効果がありません。 | Double |
Weights_Matrix_File (オプション) | フィーチャ間の空間リレーションシップ、および潜在的に時系列のリレーションシップを定義するウェイトが含まれたファイルへのパス。 | File |
number_of_neighbors (オプション) | 分析に含める近傍の数を指定する整数。 | Long |
派生した出力
名前 | 説明 | データ タイプ |
Index | Moran インデックス値。 | Double |
ZScore | Double | |
PValue | p 値。 | Double |
Report_File | 結果の概要図を持つ HTML ファイル。 | File |
コードのサンプル
次の Python ウィンドウ スクリプトは、SpatialAutocorrelation 関数の使用方法を示しています。
import arcpy
arcpy.env.workspace = r"c:\data"
arcpy.stats.SpatialAutocorrelation("olsResults.shp", "Residual", "NO_REPORT",
"GET_SPATIAL_WEIGHTS_FROM_FILE", "EUCLIDEAN DISTANCE",
"NONE", "#", "euclidean6Neighs.swm")
次のスタンドアロン Python スクリプトは、SpatialAutocorrelation 関数の使用方法を示しています。
# Analyze the growth of regional per capita incomes in U.S.
# Counties from 1969 -- 2002 using Ordinary Least Squares Regression
# Import system modules
import arcpy
# Set property to overwrite existing outputs
arcpy.env.overwriteOutput = True
# Local variables...
workspace = r"C:\Data"
try:
# Set the current workspace (to avoid having to specify the full path to the feature classes each time)
arcpy.env.workspace = workspace
# Growth as a function of {log of starting income, dummy for South
# counties, interaction term for South counties, population density}
# Process: Ordinary Least Squares...
ols = arcpy.stats.OrdinaryLeastSquares("USCounties.shp", "MYID",
"olsResults.shp", "GROWTH",
"LOGPCR69;SOUTH;LPCR_SOUTH;PopDen69",
"olsCoefTab.dbf",
"olsDiagTab.dbf")
# Create Spatial Weights Matrix (can be based on input or output FC)
# Process: Generate Spatial Weights Matrix...
swm = arcpy.stats.GenerateSpatialWeightsMatrix("USCounties.shp", "MYID",
"euclidean6Neighs.swm",
"K_NEAREST_NEIGHBORS",
"#", "#", "#", 6)
# Calculate Moran's I Index of Spatial Autocorrelation for
# OLS Residuals using a SWM File.
# Process: Spatial Autocorrelation (Morans I)...
moransI = arcpy.stats.SpatialAutocorrelation("olsResults.shp", "Residual",
"NO_REPORT", "GET_SPATIAL_WEIGHTS_FROM_FILE",
"EUCLIDEAN_DISTANCE", "NONE", "#",
"euclidean6Neighs.swm")
except:
# If an error occurred when running the tool, print the error message.
print(arcpy.GetMessages())
環境
特殊なケース
- 出力座標系
フィーチャ ジオメトリは分析に先立って出力座標系に投影されます。すべての数学的演算は、出力座標系の空間参照に基づいて実行されます。[出力データの座標系] が度、分、および秒に基づく場合、測地距離は弦距離を使用して推定されます。
ライセンス情報
- Basic: Yes
- Standard: Yes
- Advanced: Yes