変数 T (温度) の空間モデリングを行います。文献で一般的に使用されているものを使用します。回帰を実行し (高度などの変数を使用)、IDW を使用して残差を空間的に補間します。R パッケージ gstat には次のオプションがあるようです:
interpolated <- idw(T ~ altitude, stations, grid, idp=6)
spplot(interpolated["var1.pred"])
しかし、idw()
彼らのドキュメントには次のように書かれています:
関数 idw は [...] を実行します。数式で予測変数を使用しないでください。
実際、結果は、残差の空間補間を行わずに回帰のみを実行した場合とまったく同じように見えます。私は手動でそれを行うことができることを知っています:
m1 <- lm(T ~ altitude, data = data.frame(stations))
Tres <- resid(m1)
res.int <- idw(Tres ~ 1, stations, grid, idp=6)
Tpred <- predict.lm(m1, grid)
spplot(SpatialGridDataFrame(grid, data.frame(T = Tpred + data.frame(res.int)['var1.pred'])))
しかし、これには多くの欠点があります。モデルが 1 つのオブジェクトに含まれていないため、要約を直接実行したり、逸脱や残差をチェックしたり、最も重要なこととして交差検証を実行したりすることはできません。すべてを手動で行う必要があります。そう、
Rの1つのモデルで回帰とIDWを行う方法はありますか?
IDW はモデリングのこの分野で使用されており、これらの目的のために十分にテストされているため、空間補間の別の方法を使用したくないことに注意してください。