[数据挖掘] 47 时间序列预测 6 平滑法-简单指数平滑法 美国铁路(美铁)客运公司数据

[数据挖掘] 47 时间序列预测 6 平滑法-简单指数平滑法 美国铁路(美铁)客运公司数据_哔哩哔哩_bilibili

# 将简单指数平滑法应用于通过回归模型得到的残差序列(去除了趋势和季节性效应)
residual_ts = ridership_lm_trendseason.resid  # ridership_lm_trendseason.resid 获取回归模型的残差序列
# print(residual_ts)
residual_pred = test_df.Ridership - ridership_lm_trendseason.predict(test_df)
fig,ax = plt.subplots(figsize = (9,4),dpi=180)
ridership_lm_trendseason.resid.plot(ax=ax, color='black',linewidth=0.5)
residual_pred.plot(ax=ax,color='black',linewidth=0.5,style='--')
ax.set_xlabel('Time')
ax.set_ylabel('Ridership')
ax.axhline(y=0,xmin=0,xmax=1,color='grey',linewidth=0.5)

expsmoothFit = ExponentialSmoothing(residual_ts,freq='MS').fit(smoothing_level=0.2) # 对残差序列进行指数平滑的拟合
expsmoothFit.fittedvalues.plot(ax=ax,color='yellowgreen') # 得到拟合值序列并绘图
expsmoothFit.forecast(len(test_ts)).plot(ax=ax,style='--',linewidth=2,color='yellowgreen') # 得到长度为训练集的预测值
singleGraphLayout(ax,[-500,500],train_df,test_df)


ridership_prediction = ridership_lm_trendseason.predict(test_df.iloc[0,:])
print(ridership_prediction[0])
print(expsmoothFit.forecast())
print("简单指数平滑2001-04修正后预测值",ridership_prediction[0]+expsmoothFit.forecast())
print('简单指数平滑2001-04真实值',test_ts[0])

plt.show()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值