问题描述
我有时间序列销售数据。首先,我按一年的销售额分组。我想预测 2021、2022 和 2023 年的销售额。我有 2000 年的数据。
我的问题与此 one 类似,但我想知道如何在训练索引之外进行预测。
model = AutoReg(grp,lags=5)
model_fit = model.fit()
predictions = model_fit.predict(start=len(grp),end=len(grp)+3,dynamic=False)
如果我这样做,结果是:
2021-12-31 NaN
2022-12-31 NaN
2023-12-31 NaN
2024-12-31 NaN
如果我将 end 变量设置为 len(grp)-1,我可以让它工作,但这意味着我正在对样本中的数据进行预测,我想对未来进行预测。
属性 dynamic 似乎很突出,因为它在文档中说它代表预测使用动态计算的滞后值的索引。
解决方法
时间序列的索引没有设置 freq
,即使索引是年度的。
grp.index.freq="Y"
为我做了这项工作。当您有时间序列的数字索引时,似乎也没有任何问题。