我正在尝试为我的时间序列数据运行贝叶斯结构时间序列。但是卡在数据框上会出现此错误。我是R的积极学习者,并且是时间序列建模的新手。请谁能帮助我修复以下错误?谢谢你。
我采用了(https://multithreaded.stitchfix.com/blog/2016/04/21/forget-arima/)中的代码
运行Arima模型,结果令人满意。但是我对贝叶斯结构时间序列模型的数据框架感到震惊。
注意:实际的“ AirPassengers”数据为12年。而我的是每月10年的时间序列数据。
'
ss <- AddLocalLinearTrend(list(), y)
ss <- AddSeasonal(ss, y, nseasons = 12)
bsts.model <- bsts(y, state.specification = ss, niter = 500, ping=0, seed=2018)
'
burn <- SuggestBurn(0.1, bsts.model)
p <- predict.bsts(bsts.model, horizon = 24, burn = burn, quantiles = c(.025, .975))
p
plot(p)
d2 <- data.frame(
c(10^as.numeric(-colMeans(bsts.model$one.step.prediction.errors[-(1:burn),])+y),
10^as.numeric(p$mean)),
as.numeric(IPTS),
as.Date(time(IPTS)))
Error in data.frame(c(10^as.numeric(- colMeans(bsts.model$one.step.prediction.errors[-(1:burn), : arguments imply differing number of rows: 144, 120
我想为我的时间序列数据绘制BSTS-Holdout MAPE。
感谢您的提前帮助。