我有一个在 train[:350] test[350:427] 值的数据集中训练的 arima 模型。我在训练值中拟合模型,我的 (p,d,q) 值为 (1,1,2)。目前我一次只能预测一个时间步。我想循环运行模型,以便每次输出一个预测值时,它都会被添加到训练数据集中,新值用于预测另一个新的预测值。我无法理解如何做到这一点,到目前为止,这就是我所拥有的。
historical = train['max']
predictions = []
for t in range(len(test)):
model = ARIMA(historical, order=(1,1,2))
model_fit = model.fit()
output = model_fit.forecast(exog=test['max'][t])
predictions.append(output)
observed = test['max'][t]
historical.append(predictions)
print(len(historical))