概要
空間的に変化する関係をモデリングするときに使用される局所形の線形回帰である、地理空間加重回帰分析 (GWR) を実行します。
メモ:
このツールは、[地理空間加重回帰分析 (Geographically Weighted Regression) (GWR)] という廃止された類似のツールの後継として ArcGIS Pro 2.3 に追加されました。この新しいツールには、過去数年間に開発された方法の改善が含まれ、追加のモデルがサポートされています。
図
使用法
このツールは、空間的に変化する関係をモデリングするときに使用される局所形の線形回帰である、地理空間加重回帰分析 (GWR) を実行します。GWR ツールは、データセット内のあらゆるフィーチャに回帰方程式をあてはめることで、理解または予測しようとしている変数またはプロセスのローカル モデルを作成します。[地理空間加重回帰分析 (Geographically Weighted Regression) (GWR)] ツールでは、各ターゲット フィーチャの近傍内に存在するフィーチャの従属変数と説明変数を組み込んで、このような別々の方程式を作成します。各近傍の形状と範囲は、[近傍タイプ] と [近傍選択方法] パラメーターに対する入力に基づきますが、これには 1 つの制約があります。近隣のフィーチャ数が 1000 を超えると、各局所方程式には最近隣の 1000 個だけが組み込まれます。
最善の結果となるよう、GWR ツールは、数百のフィーチャを伴うデータセットに適用してください。この手法は、小さなデータセットへの使用には適していません。このツールをマルチポイント データに使用することはできません。
[入力フィーチャ] パラメーターは、モデル化している現象 ([従属変数]) を表すフィールドと [説明変数] を表す 1 つ以上のフィールドとともに使用します。これらのフィールドは数値で、値の範囲を含む必要があります。従属変数または説明変数に欠損値があるフィーチャは、解析から除外されます。ただし、[欠損値の補完 (Fill Missing Values)] ツールを使用して、[地理空間加重回帰分析 (Geographically Weighted Regression) (GWR)] ツールを実行する前にデータセットを完全なものにすることができます。
- また、GWR ツールは、[出力フィーチャ] を生成し、局所的な診断値を報告するフィールドを追加します。[出力フィーチャクラス] と関連するチャートは、残余をモデリングできるよう、ホット/コールド レンダリング方式が適用された状態で、[コンテンツ] ウィンドウに自動的に追加されます。各出力およびチャートの詳細な説明については、「地理空間加重回帰分析の詳細」をご参照ください。
メモ:
[地理空間加重回帰分析 (Geographically Weighted Regression) (GWR)] ツールでは、各種出力を生成できます。GWR モデルの概要は、ツールの実行中に [ジオプロセシング] ウィンドウの下にメッセージとして表示されます。このメッセージにアクセスするには、[ジオプロセシング] ウィンドウでプログレス バーの上にカーソルを置くか、ポップアップ ボタンをクリックするか、メッセージ セクションを展開します。ジオプロセシング履歴を介して、以前に実行した [地理空間加重回帰分析 (Geographically Weighted Regression) (GWR)] ツールのメッセージにアクセスすることもできます。
指定する [モデル タイプ] パラメーターは、モデル化しているデータによって異なります。回帰分析の正確な結果を得るには、解析に正しいモデルを使用することが重要です。
投影データを使用することをお勧めします。これは、距離が分析の要素になっている場合には、[近傍タイプ] パラメーターに [距離バンド] を選択すると、GWR にとっても距離が成分となるため、特に重要です。データの投影法には、(地理座標系ではなく) 投影座標系を使用することをお勧めします。
[地理空間加重回帰分析 (Geographically Weighted Regression) (GWR)] ツールによる計算の中には、パフォーマンス向上のために複数の CPU を利用するものもあり、この場合は自動的に最大 8 つのスレッド/CPU が処理に使用されます。
GWR ツールを使用しデータをローカルに調査する前に、[一般化線形回帰 (Generalized Linear Regression)] ツールを使用してデータをグローバルに調査する方法が一般的です。
[従属変数] および [説明変数] パラメーターは、さまざまな値を含む数値フィールドである必要があります。これらの値には、グローバルおよびローカルなばらつきがあります。このため、GWR モデルでは、別の空間様式を表すダミーの説明変数を使用しないでください (都心外の国勢調査地区に 1 という値を割り当て、それ以外にはすべて 0 という値を割り当てるなど)。GWR ツールでは、説明変数の係数が異なっていてもよいため、このような空間様式の説明変数が不要です。これを含めてしまうと、局所的な多重共線性の問題が生じます。
一般化線形回帰のようなグローバル回帰モデルでは、複数の変数が多重共線性を示すと (複数の変数が冗長であるか、同じ「ストーリー」を語るとき)、結果は信頼できません。GWR ツールでは、データセットの各フィーチャについて、局所的な回帰方程式が構築されます。特定の説明変数の値が空間的にクラスタリングしている場合は、局所的な多重共線性が問題となっている可能性が高いといえます。局所的な多重共線性のために不安定な結果になっているかどうかは、出力フィーチャクラスの条件数フィールド (COND) で確認できます。一般的に、条件数が 30 を上回っている場合、NULL に等しい場合、またはシェープ ファイルの場合であれば -1.7976931348623158e+308 に等しい場合の結果には信頼性がありません。条件数は、モデル内の説明変数の数を補正するようにスケール調整されます。これによって、異なる数の説明変数を使用するモデル間で条件数を直接比較できるようにします。
GWR モデルに名義またはカテゴリ データを含める場合には、注意してください。カテゴリが空間的にクラスタリングしているようなときには、局所的な多重共線性の問題が生じるリスクがあります。局所的な共線性が問題となっているかどうかは、GWR 出力に含まれている条件数からわかります (条件数が 0 未満、30 超、または NULL に設定されている場合)。局所的な多重共線性が存在する場合の結果は安定していません。
説明変数の係数にみられる地域的なばらつきについて理解を深めるために、GWR ツールによって作成されるオプションのラスター係数サーフェスを確認します。これらのラスター サーフェスは、[その他のオプション] の下にある [係数ラスター ワークスペース] を指定していれば、この中に作成されます。ポリゴン データの場合は、[出力フィーチャ] の各係数フィールドにグラデーションの色やコールドからホットまでのレンダリングを使用して、分析範囲全体における変化を確認できます。
GWR ツールは、[予測位置] のフィーチャクラス (多くの場合、このフィーチャクラスは [入力フィーチャ] と同じです) を指定し、説明変数を照合して、[出力予測済みフィーチャ] を指定することで、予測を行う場合にも使用できます。[入力フィーチャ] の [照合する説明変数] フィールドが [予測位置からのフィールド] フィールドと一致する場合、それらは自動的に設定されます。一致しない場合は、正しいフィールドを指定します。
重要な説明変数が欠けていると、回帰モデルは誤って指定されます。回帰残余の空間的自己相関が統計的に有意である場合や、1 つ以上の説明変数の係数に予期せぬ空間的なばらつきがある場合は、モデルが誤って指定されている可能性が考えられます。これらの欠けている重要な変数を特定し、これらをモデルに含められるよう、(GLR 残余分析や GWR 係数差異分析などを通じて) あらゆる努力を行ってください。
常に、説明変数を非定常とすることが理にかなっているかを疑ってみてください。たとえば、ASPECT をはじめとするいくつかの変数を関数として、特定の植物種の密度をモデリングしているとします。ASPECT 変数の係数が分析範囲全体で変化する場合には、重要な説明変数 (優勢な競合する植物など) が欠けているという事実を示している可能性が高いといえます。あらゆる努力を行って、回帰モデルにすべての重要な説明変数を含めてください。
計算結果が無限または未定義の場合、シェープファイル以外の結果は NULL に、シェープファイルの結果は -DBL_MAX = -1.7976931348623158e+308 になります。
注意:
シェープファイルを使用するときは、NULL 値を格納できないため、注意が必要です。シェープファイルではない入力からシェープファイルを作成するツールやその他の手順では、結果的に NULL 値がゼロまたは非常に小さな負の値 (-DBL_MAX = -1.7976931348623158e+308) として格納されることがあります。この場合、予期せぬ結果に至ることがあります。詳細については、「ジオプロセシングでのシェープファイル出力の注意事項」をご参照ください。
[近傍選択方法] パラメーターには、次の 3 つのオプションがあります。[黄金探索] を選択すると、ツールは黄金探索方法を使用して、[距離バンド] または [近傍数] パラメーターに最適な値を見つけます。 [手動間隔] オプションは、距離バンドまたは近傍数を少しずつ増やして、指定された距離間の近傍をテストします。どちらの場合も、使用される近傍サイズは、赤池情報量基準 (AICc) の値を最小化するサイズです。しかしながら、どちらの方法も、局所的な多重共線性の問題のために、最適な距離バンドまたは近傍数の解を求めることができません。エラーが表示されたり深刻なモデル設計上の問題が発生した場合は、[ユーザー定義] オプションを使用して、特定の距離または近傍数を指定してみてください。次に、出力フィーチャクラスの条件数を確認し、どのフィーチャが局所的な共線性の問題に関係しているのか確認してください。
深刻なモデル設計上の問題や、局所方程式に十分な近傍数が含まれていないことを示すエラーは、多くの場合、グローバルまたは局所的な多重共線性の問題があることを示しています。どこに問題があるのかを判断するために [一般化線形回帰 (Generalized Linear Regression)] を使用してグローバル モデルを実行し、各説明変数について VIF 値 を確認します。大きな VIF 値がある場合 (たとえば 7.5 以上)、グローバル多重共線性によって GWR では解を導けなくなっています。しかし、もっと可能性が高いのは、ローカル多重共線性の問題です。各独立変数の主題図を作成してみてください。主題図で同一値が空間的にクラスターを形成している場合は、モデルからそのような変数を除外するか、別の独立変数と組み合わせて値のばらつきを増やします。たとえば、家屋の値をモデリングしているときに、寝室と浴室について変数を設けている場合は、これらを組み合わせてバリエーションを増やすか、浴室/寝室の面積を表すものにすることができます。GWR モデルの構築時には、空間様式のダミー変数、空間クラスターとなっているカテゴリや名義変数、可能性のある値が非常に限られている変数の使用を避けてください。
[地理空間加重回帰分析 (Geographically Weighted Regression)] は、[一般化線形回帰 (Generalized Linear Regression)] と同じ要件の適用を受ける線形モデルです。GWR モデルが適切に指定できていることを確認するには、「地理空間加重回帰分析の詳細」で説明されている診断を確認してください。「回帰分析の基礎」のトピックの「回帰モデルがうまくいかない理由」にも、モデルが正確であることを確認するための情報が記載されています。
構文
arcpy.stats.GWR(in_features, dependent_variable, model_type, explanatory_variables, output_features, neighborhood_type, neighborhood_selection_method, {minimum_number_of_neighbors}, {maximum_number_of_neighbors}, {minimum_search_distance}, {maximum_search_distance}, {number_of_neighbors_increment}, {search_distance_increment}, {number_of_increments}, {number_of_neighbors}, {distance_band}, {prediction_locations}, {explanatory_variables_to_match}, {output_predicted_features}, {robust_prediction}, {local_weighting_scheme}, {coefficient_raster_workspace})
パラメーター | 説明 | データ タイプ |
in_features | 従属変数と説明変数を格納したフィーチャクラス。 | Feature Layer |
dependent_variable | モデル化される観測値を含む数値フィールド。 | Field |
model_type | モデル化されるデータのタイプを指定します。
| String |
explanatory_variables [explanatory_variables,...] | 回帰モデルの独立説明変数を表すフィールドのリスト。 | Field |
output_features | 従属変数の推定値と残差が含まれている新しいフィーチャクラス。 | Feature Class |
neighborhood_type | 使用される近傍を固定距離として構築するか、フィーチャの密度に応じて空間範囲の変化を許容するかを指定します。
| String |
neighborhood_selection_method | 近傍サイズの決定方法を指定します。GOLDEN_SEARCH および MANUAL_INTERVALS オプションを使用して選択された近傍は、AICc の値を最小化する処理に基づきます。
| String |
minimum_number_of_neighbors (オプション) | 各フィーチャが計算に含める最小の近傍数。少なくとも 30 の近傍を使用することをお勧めします。 | Long |
maximum_number_of_neighbors (オプション) | 各フィーチャが計算に含める最大の近傍数 (最大 1000)。 | Long |
minimum_search_distance (オプション) | 最小近傍検索距離。各フィーチャに少なくとも 30 の近傍がある距離を使用することをお勧めします。 | Linear Unit |
maximum_search_distance (オプション) | 最大近傍検索距離。フィーチャの近傍が 1000 を超える距離の場合、ツールはターゲット フィーチャの計算に最初の 1000 を使用します。 | Linear Unit |
number_of_neighbors_increment (オプション) | 各近傍テストで手動間隔を増加させる近傍数。 | Long |
search_distance_increment (オプション) | 各近傍テストで手動間隔を増加させる距離。 | Linear Unit |
number_of_increments (オプション) | minimum_number_of_neighbors または minimum_search_distance パラメーターから始まる、テストする近傍サイズの数。 | Long |
number_of_neighbors (オプション) | 各フィーチャについて考慮する近隣フィーチャの最も近い数 (最大 1000)。この数は 2 ~ 1000 の整数である必要があります。 | Long |
distance_band (オプション) | 近傍の空間範囲。 | Linear Unit |
prediction_locations (オプション) | 推定を計算する場合に、位置を表すフィーチャが格納されるフィーチャクラス。このデータセット内の各フィーチャには、指定されたすべての説明変数の値が含まれています。これらのフィーチャの従属変数は、入力フィーチャクラス データに対してキャリブレーションされたモデルを使用して推定されます。予測には、これらのフィーチャの位置が in_features と同じ分析範囲内か、近く (範囲プラス 15 パーセント内) にある必要があります。 推定を計算する場合に、位置を表すフィーチャが格納されるフィーチャクラス。このデータセット内の各フィーチャには、指定されたすべての説明変数の値が含まれています。これらのフィーチャの従属変数は、入力フィーチャクラス データに対してキャリブレーションされたモデルを使用して推定されます。予測には、これらのフィーチャの位置が [入力フィーチャ] と同じ分析範囲内か、近く (範囲プラス 15 パーセント内) にある必要があります。 | Feature Layer |
explanatory_variables_to_match [explanatory_variables_to_match,...] (オプション) | in_features パラメーターの対応する説明変数と照合する prediction_locations パラメーターの説明変数。たとえば、[["LandCover2000", "LandCover2010"], ["Income", "PerCapitaIncome"]] などです。 | Value Table |
output_predicted_features (オプション) | 各 prediction_location の従属変数の推定値を受け取る出力フィーチャクラス。 | Feature Class |
robust_prediction (オプション) | 予測計算に使用されるフィーチャを指定します。
| Boolean |
local_weighting_scheme (オプション) | モデルの空間的な加重を提供するために使用されるカーネル タイプを指定します。カーネルは、各フィーチャと近傍内にある他のフィーチャとの関連性を定義します。
| String |
coefficient_raster_workspace (オプション) | 係数ラスターが作成されることになるワークスペース。ワークスペースを設けると、インターセプトとすべての説明変数についてラスターが作成されます。 | Workspace |
派生した出力
名前 | 説明 | データ タイプ |
coefficient_raster_layers | 出力係数ラスター。 | ラスター レイヤー |
コードのサンプル
次の Python ウィンドウ スクリプトは、GWRツールの使用方法を示しています。
import arcpy
arcpy.env.workspace = r"c:\data\project_data.gdb”
arcpy.stats.GWR("US_Counties", "Diabetes_Percent", "CONTINUOUS",
"Inactivity_Percent;Obesity_Percent", "out_features",
"NUMBER_OF_NEIGHBORS", "GOLDEN_SEARCH", None, None, None,
None, None, None, None, None, None, None, None, None, "ROBUST",
"BISQUARE")
次のスタンドアロン Python スクリプトは、GWR ツールの使用方法を示しています。
# Linear regression using a count model to predict the number of crimes.
# The depend variable (total number of crimes) is predicted using total
# population, the median age of housing, and average household income.
import arcpy
# Set the current workspace (to avoid having to specify the full path to
# the feature classes each time)
arcpy.env.workspace = r"c:\data\project_data.gdb"
arcpy.stats.GWR("crime_counts", "total crimes", "COUNT", "YRBLT;TOTPOP;AVGHINC",
"out_features", "NUMBER_OF_NEIGHBORS", "GOLDEN_SEARCH", 30, None, None, None,
None, None, None, None, None, "prediction_locations",
"YRBLT YRBLT;TOTPOP TOTPOP;AVGHINC AVGHINC", "predicted_counts",
"NON_ROBUST", "BISQUARE", r"c:\data\out_rasters")
環境
- 出力座標系
フィーチャ ジオメトリは、分析の完了後に出力データの座標系に投影されます。
ライセンス情報
- Basic: 制限付き
- Standard: 制限付き
- Advanced: はい