如何使用 statsmodel 的 AutoRegression 预测样本外?
How to forecast out of sample with AutoRegression from statsmodel?
我有时间序列的销售数据。首先,我按年对销售额进行分组。我想预测 2021、2022 和 2023 年的销售额。我有 2000 年的数据。
我的问题与此类似,但是我想知道如何在训练索引之外进行预测。
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
如果我将结束变量设置为 len(grp)-1,我可以让它工作,但这意味着我正在对样本中的数据进行预测我想对未来进行预测。
属性 dynamic 似乎很重要,正如它在文档中所说的那样,它表示预测使用动态计算的滞后值的索引。
时间序列的索引没有 freq
集,即使索引是年度的。
grp.index.freq="Y"
帮我完成了工作。当你有时间序列的数字索引时,似乎也没有任何问题。
我有时间序列的销售数据。首先,我按年对销售额进行分组。我想预测 2021、2022 和 2023 年的销售额。我有 2000 年的数据。
我的问题与此类似
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
如果我将结束变量设置为 len(grp)-1,我可以让它工作,但这意味着我正在对样本中的数据进行预测我想对未来进行预测。
属性 dynamic 似乎很重要,正如它在文档中所说的那样,它表示预测使用动态计算的滞后值的索引。
时间序列的索引没有 freq
集,即使索引是年度的。
grp.index.freq="Y"
帮我完成了工作。当你有时间序列的数字索引时,似乎也没有任何问题。