Bana bir zaman dilimi için öngörülerde bulunacak karışık bir etki modelim var (aslında genelleştirilmiş bir karma model var). Otokorelasyonu dengelemek için eksik verilerim olduğu için bir corCAR1 modeli kullanıyorum. Verilerin bana toplam bir yük vermesi gerekiyor, bu yüzden tüm tahmin aralığı boyunca toplamam gerekiyor. Ancak, toplam yük üzerindeki standart hatanın bir tahminini de almalıyım.
Tüm tahminler bağımsız olacaksa, bu kolayca çözülebilir:
ile
Sorun şu ki, tahmin edilen değerler bir modelden geliyor ve orijinal veriler otomatik korelasyonlu. Bütün sorun şu sorulara yol açar:
- Hesaplanan tahminlerdeki ÖD'nin, bu tahminin beklenen değeri üzerindeki varyansın kökü olarak yorumlanabileceğini varsaymakta haklı mıyım? Tahminleri "ortalama tahminler" olarak yorumlamaya meyilliyim ve bu nedenle de bütün bir araç kümesini topladım.
- Otokorelasyonu bu probleme nasıl dahil edebilirim ya da sonuçları çok fazla etkilemeyeceğini güvenle söyleyebilir miyim?
Bu, R'ye bir örnektir. Gerçek veri setimde 34.000 ölçüm var, bu yüzden ölçeklendirilebilirlik bir problem. Otokorelasyonu her ay içinde modellememin nedeni budur, aksi halde hesaplamalar artık mümkün değildir. En doğru çözüm değil, ama en doğru çözüm mümkün değil.
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)
Düzenle :
Öğrenilecek ders: önce tüm yardım dosyalarındaki tüm örnekleri kaydırmadan önce gözden geçirin. Predict.gam yardım dosyalarında şunları bulabilirim:
#########################################################
## 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)
Bu benim yapmak istediklerime yakın gibi görünüyor. Bu hala bana tam olarak nasıl yapıldığını söylemiyor. Doğrusal prediktör matrisine dayandığı gerçeğine kadar gidebilirim. Herhangi bir görüş hala açıktır.