Python中ARIMA的样本内预测间隔

时间:2020-07-09 16:47:12

标签: python prediction statsmodels arima

我正在使用statsmodels ARIMA建立模型并给出估计。可以使用predict()来给出样本中模型的估计/结果。 Forecast()可用于给出样本外估计和预测间隔。我需要样本内模型结果的预测间隔。有没有可以使用的操作?可以在样本中调用Forecast()吗?

1 个答案:

答案 0 :(得分:1)

如果可能,您应该切换到使用SARIMAX模型,该模型具有更多功能,并且以后会得到更好的支持(ARIMA模型将在下一版本中弃用)。结果对象将具有称为get_predictionget_forecast的方法,这些方法将允许您创建一个新的结果对象,并使用您的新值进行扩展。

获取预测间隔的语法略有不同,但是它支持样本内和样本外的间隔。

from statsmodels.tsa.api import SARIMAX
model = SARIMAX(timeseries, order=(1, 0, 6))
results = model.fit()

pred = results.get_prediction(start=..., end=...)
print(pred.predicted_mean)        # prediction
print(pred.conf_int(alpha=0.05))  # confidence interval

fcast = results.get_forecast(steps=...)
print(fcast.predicted_mean)        # forecast
print(fcast.conf_int(alpha=0.05))  # confidence interval