Python时间序列预测平线

时间:2019-12-08 02:57:12

标签: python time-series arima

我正在尝试使用ARIMA模型预测常规和有机鳄梨的价格,但该预测显示了一条平线。 我使用2015年1月至2018年3月的历史数据进行预测,并使用最低的AIC值进行拟合。重置常规鳄梨的索引后,只有169个样本。我不确定哪里出了问题。任何建议深表感谢。

org = avo[avo['type']== "organic"]
con = avo[avo['type']== "conventional"]

con_avo = con.groupby('Date'['AveragePrice'].mean().reset_index()
con_avo = con_avo.set_index(pd.DatetimeIndex(con_avo['Date']))

org_avo = org.groupby('Date')['AveragePrice'].mean().reset_index()
org_avo = org_avo.set_index(pd.DatetimeIndex(org_avo['Date']))

mod = sm.tsa.statespace.SARIMAX(y,
                            order=(0, 1, 0),
                            seasonal_order=(0, 0, 0, 12),
                            enforce_stationarity=False,
                            enforce_invertibility=False)
con_results = mod.fit()

y = con_avo['AveragePrice']
forecast = con_results.get_forecast(steps=100)
pred_ci = forecast.conf_int()
ax = y.plot(label='Observed', figsize=(14, 7))
forecast.predicted_mean.plot(ax=ax, 
label='Forecast')
ax.fill_between(pred_ci.index,
            pred_ci.iloc[:, 0],
            pred_ci.iloc[:, 1], color='k',alpha=.25)
ax.set_xlabel('Date')
ax.set_ylabel('Average Price')
plt.legend()
plt.show()

这是我目前得到的:

forecast of average price of conventional avocado

0 个答案:

没有答案