GIS教材で扱われていることをとりあえずテキストどおりにやってみます。
別途、隣接行列や重み行列について作成なんぞをしてみる予定。
空間的自己回帰モデル
RのサンプルデータのOLD.COLを使います。
空間統計解析の基本的なパッケージのひとつ「spdep」をインストールしておきます。
1 |
>install.packages("spdep") |
spdepのパッケージを読み込みます。
1 |
>library(spdep) |
サンプルデータ「OLD.COL」を読み込みます。
※オハイオ州コロンバス市の犯罪に関するデータセット
1 |
>data(oldcol) |
データセットの中身を確認。
今回は、従属変数としてCRIME, 説明変数としてHOVAL, INCを用います。
1 |
>names(COL.OLD) |
lagsarlm関数を用いて、空間的自己回帰モデルを算出すします。
空間重み行列には、サンプルデータのCOL.nbを使用しています。
1 |
>col.sar <- lagsarlm(CRIME ~ INC + HOVAL, data = COL.OLD, nb2listw(COL.nb, style = "W"), method = "eigen") |
以下を実行すると結果が算出されます。
1 |
>summary(col.sar) |
*警告がいくつか出ます、気にしませんが見てみる場合は….
1 |
>warnings(col.sar) |
空間的誤差自己回帰モデル
RのサンプルデータのOLD.COLを用いて、空間的誤差自己回帰モデルを算出
1 2 3 |
>library(spdep) >data(oldcol) >names(COL.OLD) |
errorsarlm関数を使います。
1 |
>col.err <- errorsarlm(CRIME ~ INC + HOVAL, data = COL.OLD, nb2listw( COL.nb, style = "W")) |
summary(col.err)を実行すると結果が算出されます。
1 |
>summary(col.err) |
地理的加重回帰(GWR:Geographically Weighted Regression)
傾向面分析でも使用するSAMを使います。
SAM:Spatial Analysis in Macroecology
空間統計分析のためのツールパッケージで、主に表面パターン空間分析用アプリケーションです。
アカウント登録後、ダウンロードページの左下に表示されているバージョン3.1を使います。
シカゴ大学のSAMPLE DATAにあるcolumbusのshapeデータを使います。
SAMをダウンロード後インストールして起動。
Fileアイコンをクリックし、columbus.shpを読み込みます。
ModelingのGeographically Weight Regressionをクリック。
Response Variableに「CRIME」を指定し、Available Variablesに「HOVAL」,「INC」を選択し、Addをクリックして「Compute」を実行。
Spatial Weighting Function は、データによって設定が必要となる。今回は、デフォルトの設定で使用。
Columbusのデータ
AREA:ArcViewによって計算された面積
PERIMETER:ArcViewによって計算された周囲長
COLUMBUS_:内部ポリゴンID (ignore)
COLUMBUS_I:別の内部ポリゴンID (ignore)
POLYID:さらに別のポリゴンID
NEIG:近隣ID値 (1-49); Spatial Econometrics Bookで使用されるid値に準拠.
HOVAL:住宅価格 (単位は$1000)
INC:世帯収入 (単位は$1000)
CRIME:近隣の1000世帯あたりの住宅強盗と車両盗難
OPEN:近隣のオープンスペース
PLUMB:配管工事なしの住宅ユニットの割合
DISCBD:CBDまでの距離(Central Business District:中央ビジネス地区?)
X:x 座標 (ポリゴン座標ではなく、任意のデジタル単位)
Y:y 座標 (ポリゴン座標ではなく、任意のデジタル単位)
NSA:南北のダミー (North=1)
NSB:南北のダミー (North=1)
EW:東西のダミー (East=1)
CP:コア周辺のダミー (Core=1)
THOUS:定数=1,000
NEIGNO:NEIG+1,000, 代替近隣ID値
空間隣接行列や空間重み行列の作成
以下、工事中
Leave a Reply