ARIMA模型预测
#划分训练集和测试集
train_ts=ts[:round(data['total'].shape[0]*0.8)]
test_ts=ts[round(data['total'].shape[0]*0.8):]
#差分数据
ts.diff()
#时序图检查查看
train_ts.plot(figsize=(12,8))
##d=0 和d=1差不多,所以就选d=0
#ADF检验
ADF(train_ts)
print(u'原始序列的ADF检验结果为:',ADF(train_ts)[1])
#LB检验
acorr_ljungbox(train_ts,lags=1) #值很小,说明不是白噪声
print(u'原始序列的白噪声检验结果为',acorr_ljungbox(train_ts,lags=1))
#
#模型拟合
fig=plt.figure(figsize=(12,8))
ax1=fig.add_subplot(211)
fig=sm.graphics.tsa.plot_acf(train_ts,lags=40,ax=ax1)
fig=plt.figure(figsize=(12,8))
ax2=fig.add_subplot(212)
fig=sm.graphics.tsa.plot_pacf(train_ts,lags=40,ax=ax2)
评论