我正在进行一个项目来分析covid 19是如何影响装船量的,我正在使用SARIMAX来预测未来几个月的装船量。但是,我仍然得到了如下结果:
# Shipment volume data (monthly basis)
df_monthly = df.loc[:'2020-06-30'].resample('MS').sum()
df_monthly
# covid 19 data (monthly basis)
df_covid_monthly = df_covid.loc[:'2020-06-30']
df_covid_monthly = df_covid.resample('MS').sum()
df_covid_monthly
# SARIMAX model
model= SARIMAX(df_monthly, exog=df_covid_new, order=(2,1,1), enforce_invertibility=False,
enforce_stationarity=False)
results= model.fit()
# Prediction
pred = results.get_prediction(start='2020-06-01',end='2020-12-01',dynamic=False, index=None,
exog=df_covid_monthly['2020-02-01':],
extend_model=None, extend_kwargs=None)
pred 产出:
<statsmodels.tsa.statespace.mlemodel.PredictionResultsWrapper at 0x27b64b4a608> 发布于 2020-08-13 09:29:07
经过多次阅读和修改我的代码,我终于能够得到我的预测的结果。以下是我所做的改变:
model = sm.tsa.SARIMAX(endog=df_monthly, order=(1,1,1),seasonal_order=(0,1,1,12))
model_fit = model.fit()
prediction = model_fit.predict(start='2020-07-01',end='2020-1201',dynamic=False, exog=df_covid_monthly,extend_kwargs=None)
发布于 2020-08-11 10:11:09
这是预期的输出。您需要从PredictionResultsWrapper (如predicted_mean )访问属性。
请参阅开发文档:https://www.statsmodels.org/devel/generated/statsmodels.tsa.base.prediction.PredictionResults.html
请注意,您不会看到Wrapper,因为这只是一个附加索引并进行内务管理的类。PredictionResults是返回的主类。
https://stackoverflow.com/questions/63351355
复制相似问题