1

変数 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 はモデリングのこの分野で使用されており、これらの目的のために十分にテストされているため、空間補間の別の方法を使用したくないことに注意してください。

4

1 に答える 1

2

したがって、最初に回帰を実行してから、残差に対して IDW を実行する必要があります。これは、理論的にもソフトウェアの観点からも、一度に行うことはできません。

  • 理論上のクリギングは、線形モデルを使用してモデルと残差の両方を一度に処理し、空間的に相関する残差による線形回帰などの予測を作成する統一された方法を提示します。ハイブリッドモデルの場合、この理論フレームは存在しません。このアドホックな性質のため、これを行うことはお勧めしません。
  • 実際には、gstat はこれを一度に行うことをサポートしていません。

非常に確立され公開されている方法であるクリギングを使用することをお勧めします。これがあなたの専門分野であまり使用されていない場合は、これを紹介する良い機会です。パッケージTps内の機能を確認することもできます。fields

数年前、私はオランダの気象庁に技術レポートを書きました。これはあなたにとって興味深いかもしれません。それは蒸発の内挿を扱っています。

于 2013-07-31T07:53:28.167 に答える