時系列の予測を行う混合効果モデル(実際には一般化された加算混合モデル)があります。自己相関に対抗するために、データが欠落しているという事実から、corCAR1モデルを使用します。データは私に総負荷を与えることになっているので、予測区間全体で合計する必要があります。ただし、その合計負荷の標準誤差の推定値も取得する必要があります。
すべての予測が独立している場合、これは次の方法で簡単に解決できます。
with V a r (E [ X i ] )= S E (E [ X i ] )2
問題は、予測値がモデルからのものであり、元のデータに自己相関があることです。問題全体が次の質問につながります。
- 計算された予測のSEは、その予測の期待値の分散のルートとして解釈できると仮定して正しいですか?私は、予測を「平均予測」として解釈する傾向があるため、平均のセット全体を合計します。
- この問題に自己相関を組み込むにはどうすればよいですか、または結果にあまり影響を与えないと安全に想定できますか?
これはRの例です。実際のデータセットには約34.000の測定値があるため、スケーラビリティが問題になります。それが、私が毎月内に自己相関をモデル化する理由です。そうしないと、計算が不可能になります。それは最も正しい解決策ではありませんが、最も正しい解決策は実行不可能です。
set.seed(12)
require(mgcv)
Data <- data.frame(
dates = seq(as.Date("2011-1-1"),as.Date("2011-12-31"),by="day")
)
Data <- within(Data,{
X <- abs(rnorm(nrow(Data),3))
Y <- 2*X + X^2 + scale(Data$dates)^2
month <- as.POSIXlt(dates)$mon+1
mday <- as.POSIXlt(dates)$mday
})
model <- gamm(Y~s(X)+s(as.numeric(dates)),correlation=corCAR1(form=~mday|month),data=Data)
preds <- predict(model$gam,se=T)
Total <- sum(preds$fit)
編集:
学ぶべき教訓:パニックになる前に、まずすべてのヘルプファイルのすべてのサンプルを調べます。predict.gamのヘルプファイルで、次を見つけることができます。
#########################################################
## now get variance of sum of predictions using lpmatrix
#########################################################
Xp <- predict(b,newd,type="lpmatrix")
## Xp %*% coef(b) yields vector of predictions
a <- rep(1,31)
Xs <- t(a) %*% Xp ## Xs %*% coef(b) gives sum of predictions
var.sum <- Xs %*% b$Vp %*% t(Xs)
これは私がやりたいことに近いようです。これはまだそれがどのように行われるかを正確に教えてくれません。線形予測行列に基づいているという事実を知ることができました。すべての洞察はまだ歓迎されています。