我正在研究 R 中的一个算法来自动化每月的预测计算。我正在使用预测包中的 ets() 函数来计算预测。它工作得很好。
不幸的是,对于某些特定的时间序列,我得到的结果很奇怪。
请在下面找到我正在使用的代码:
train_ts<- ts(values, frequency=12)
fit2<-ets(train_ts, model="ZZZ", damped=TRUE, alpha=NULL, beta=NULL, gamma=NULL,
phi=NULL, additive.only=FALSE, lambda=TRUE,
lower=c(0.0001,0.0001,0.0001,0.8),upper=c(0.9999,0.9999,0.9999,0.98),
opt.crit=c("lik","amse","mse","sigma","mae"), nmse=3,
bounds=c("both","usual","admissible"), ic=c("aicc","aic","bic"),
restrict=TRUE)
ets <- forecast(fit2,h=forecasthorizon,method ='ets')
请,您将在相关历史数据集下方找到:
values <- c(27, 27, 7, 24, 39, 40, 24, 45, 36, 37, 31, 47, 16, 24, 6, 21,
35, 36, 21, 40, 32, 33, 27, 42, 14, 21, 5, 19, 31, 32, 19, 36,
29, 29, 24, 42, 15, 24, 21)
在这里,在图表上,您将看到历史数据(黑色)、拟合值(绿色)和预测(蓝色)。预测绝对不符合拟合值。
您对如何“绑定”预测与历史销售“一致”有任何想法吗?