首页 > 解决方案 > 如何获得 ARIMA 模型上每个预测的置信区间

问题描述

我正在尝试使用 SARIMA 模型对时间序列进行“模糊”预测

我的训练集是prices_train,模型构建如下:

model_order = (0, 1, 1)
model_seasonal_order = (2, 1, 1, 24)
    
model = sm.tsa.statespace.SARIMAX(
    prices_train, order=model_order, 
    seasonal_order=model_seasonal_order)
model_fit = model.fit(disp=0)

我知道我可以使用以下指令获得点预测:

pred = model_fit.forecast(3) 

但我不想要点预测,我想要每个预测值的置信区间,这样我就可以获得预测值的模糊时间序列

我看过诸如this one之类的教程,他们在其中应用了以下代码:

forecast, stderr, conf = model_fit.forecast(alpha=a)

但是,该库似乎自 2017 年以来已更新,因为那不起作用。我已经阅读了statsmodels手册,但没有找到太多帮助。

标签: pythonarima

解决方案


您的拟合模型应该有一个返回预测的 get_prediction() 函数。然后就可以调用了prediction.conf_int(alpha=a)


推荐阅读