* ESTRELA連載 第79回 [#ub8fea3b]

** 今回使うデータ [#b18394dd]
- [[データ>http://web.sfc.keio.ac.jp/~maunz/ESTRELA/80.zip]]

** データの作成と表示 [#y312d211]
- パッケージの読み込み
 library(spdep)
 library(mgcv)
 library(spgwr)
 library(MASS)
- データの読み込み
 jiko <- read.table("jiko.csv", sep=",", header=T)
 summary(jiko)
- 変数の作成
 # jiko$POP65.POP <- jiko$POP65/jiko$POP
 jiko$NUM.LIC65.POP65 <- jiko$NUM.LICENCE.65/(jiko$POP65*1000)
 jiko$ROADD <- jiko$ROAD.LENGTH/(jiko$AREA*1000)
 # jiko$CAR.OWN.POP <- jiko$CAR.OWN/(jiko$POP*1000)
 # jiko$X2WM.OWN.POP <- jiko$X2WM.OWN/(jiko$POP*1000)
 jiko$SAFE.ZONE.D <- jiko$SAFE.ZONE / (jiko$DID)
 jiko$SAFE.ZONE.D <- jiko$SAFE.ZONE / (jiko$ROAD.LENGTH/1000)
 jiko$HAZARD.LANE.D <- jiko$HAZARD.LANE / (jiko$ROAD.LENGTH/1000)
 jiko$HAZARD.CROSS.D <- jiko$HAZARD.CROSS / (jiko$ROAD.LENGTH/1000)
 jiko$HAZARD.TOT.D <- jiko$HAZARD.TOT / (jiko$ROAD.LENGTH/1000)
 # jiko$SAFE.ZONE.D <- jiko$SAFE.ZONE / (jiko$POP/100)
 # jiko$HAZARD.LANE.D <- jiko$HAZARD.LANE / (jiko$POP/100)
 # jiko$HAZARD.CROSS.D <- jiko$HAZARD.CROSS / (jiko$POP/100)
 # jiko$SB.RD.F.D <- jiko$SB.RD.F / (jiko$CAR.OWN/1000)
 # jiko$SB.RD.R.D <- jiko$SB.RD.R / (jiko$CAR.OWN/1000)
 jiko$HOSPITAL.POP <- jiko$HOSPITAL / jiko$POP

** 空間隣接行列の作成 [#h786345f]
 coords <- matrix(0,nrow(jiko),2)
 coords[,1] <- jiko$X
 coords[,2] <- jiko$Y
 pref.tri.nb <- tri2nb(coords)

** 線形回帰モデル [#c4ee6f92]
 jiko.lm1 <- lm(FATAL24.POP~POP65.POP+ROADD+HOSPITAL.POP+HAZARD.TOT.D+SB.RD.F, data=jiko)
 summary(jiko.lm1)
 stepAIC(jiko.lm1)
 jiko.lm2 <- lm(FATAL24.POP~POP65.POP+ROADD+HOSPITAL.POP+HAZARD.TOT.D+SB.RD.F, data=jiko, weight=POP)
 summary(jiko.lm2)
 jiko.lm3 <- lm(FATAL24.POP~POP65.POP+ROADD+HOSPITAL.POP+HAZARD.TOT.D+SB.RD.F+offset(log(POP)), data=jiko)
 summary(jiko.lm3)

** 一般化線型モデル [#x44c320d]
 # jiko.glm1 <- glm(FATAL24~POP65.POP+ROADD+HOSPITAL.POP+SAFE.ZONE.D+HAZARD.TOT.D+SB.RD.F, data=jiko, family="poisson")
 # summary(jiko.glm1)

 jiko.glm1 <- glm(FATAL24~POP65.POP+ROADD+HOSPITAL.POP+HAZARD.TOT.D+SB.RD.F+offset(log(POP)), data=jiko, family="poisson")
 summary(jiko.glm1)

** 一般化加法モデル [#cfbee64c]
 jiko.gam1 <- gam(FATAL24~POP65.POP+ROADD+HOSPITAL.POP+HAZARD.TOT.D+SB.RD.F+s(X, Y), data=jiko, family="poisson")
 summary(jiko.gam1)

 jiko.gam2 <- gam(FATAL24~POP65.POP+ROADD+HOSPITAL.POP+HAZARD.TOT.D+SB.RD.F+offset(log(POP))+s(X, Y), data=jiko, family="poisson")
 summary(jiko.gam2)

** 空間フィルタリング [#wa010849]

** マルチレベルモデル [#y5bfa3e1]

** 地理的加重回帰モデル [#d17605bb]
- バンド幅の計算
 jiko.bw <- gwr.sel(FATAL24 ~ POP65.POP + ROADD + HOSPITAL.POP + HAZARD.TOT.D + SB.RD.F, data=jiko, coords=coords)
- 地理的加重回帰モデルの推定
 jiko.gwr <- gwr(FATAL24 ~ POP65.POP + ROADD + HOSPITAL.POP + HAZARD.TOT.D +
 SB.RD.F, data=jiko, coords=coords, bandwidth=jiko.bw,  hatmatrix=TRUE)
 jiko.gwr$SDF

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS