这一部分是时间序列,计量经济学的大头。下面两个库很重要
ARIMA模型
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import statsmodels.api as smapi
from arch.unitroot import ADF
from statsmodels.graphics.tsaplots import plot_acf,plot_pacf
from statsmodels.tsa.api import ARMA
data=pd.read_excel("arima_data.xls",index_col=0)
#绘制时间序列图
#data.plot()
#plt.show()
#绘制自相关图
#plot_acf(data).show()
#平稳性检验,序列不平稳
#print(ADF(data["销量"]))
#差分
diff_data=data.diff().dropna()
diff_data.columns=["D销量"]
# diff_data.plot()
#plt.show()
# plot_acf(diff_data).show()
#差分后做单位根检验,平稳
print(ADF(diff_data["D销量"]))
#不需要二阶差分
#选择pq,armia(p,d,q),根据AIC,BIC准则
# plot_acf(diff_data,lags=10).show()
# plot_pacf(diff_data,lags=10).show()
arma=ARMA(diff_data["D销量"],(0,1))
arma_result=arma.fit()
# print(arma_result.summary())
#模型检验,主要是检验残差,检验残差的自相关,如果不存在自相关,模型正确