我发帖是因为仔细查看了 hts 文档(在此处插入当之无愧的 RTFM)后,我认为我找到了一种使用combinef()
hts 中的函数,可用于优化组合外部预测forecast.gts()
环境。在接受答案之前,我会将其保留一段时间,以便其他人可以告诉我我是否错了。
fh <- 8
library(hts)
library(MAPA)
set.seed(1)
x <- ts(rpois(365, lambda=0.05), frequency=365, start=2014)
y <- ts(rpois(365, lambda=0.07), frequency=365, start=2014)
my_hts <- hts(data.frame(x,y))
ally <- aggts(my_hts)
allf <- matrix(NA, nrow = fh, ncol = ncol(ally))
for(i in 1:ncol(ally)){
allf[,i] <- mapafor(ally[,i],
mapaest(ally[,i], outplot=0),
fh = fh,
outplot=0)$outfor
}
allf <- ts(allf)
y.f <- combinef(allf, my_hts$nodes, weights=NULL, keep="bottom")
#here's what the non-reconciled, bottom-level MAPA forecasts look like
print(allf[1,1:2])
Series 1 Series 2
1 0.1343304 0.06032574
#here's what the reconciled MAPA bottom-level forecasts look like
#notice that they're different
print(y.f[1,])
[1] 0.06030926 0.07402938