将 Croston 模型与 R hts 包一起使用

Use Croston model with R hts package

我认为这与 post 与

相似

那里给出的示例是针对 MAPE 包的。 forecast包中的croston函数是否可以类似的方式使用?

我试了一下

all_ts <- aggts(bts)
  allf <- matrix(NA, nrow = 3, ncol = ncol(all_ts))
  for(i in 1:ncol(all_ts)){
       allf[,i] <- croston(all_ts[,i],h = 3)  
  }

但这给了我一个错误,说要替换的项目数不是替换长度的倍数。

查看croston返回的对象结构。它不是一个简单的向量。以下代码是一个有效的示例。

library(hts)
nodes <- list(2, c(3, 2))
abc <- ts(5 + matrix(sort(rnorm(500)), ncol = 5, nrow = 100))
bts <- hts(abc, nodes)
all_ts <- aggts(bts)
allf <- matrix(NA, nrow = 3, ncol = ncol(all_ts))
for(i in 1:ncol(all_ts)){
  allf[,i] <- croston(all_ts[,i],h = 3)$mean
}
y.f <- combinef(allf, bts$nodes)