执行
from statsmodels.tsa.arima_model import ARIMA
pmax = int(len(data)/10) #一般阶数不超过length/10
qmax = int(len(data)/10) #一般阶数不超过length/10
bic_matrix = [] #bic矩阵
for p in range(pmax+1):
tmp = []
for q in range(qmax+1):
try: #存在部分报错,所以用try来跳过报错。
tmp.append(ARIMA(data, (p,1,q)).fit().bic)
except:
tmp.append(None)
bic_matrix.append(tmp)
print(bic_matrix)
发现bic_matric为空,程序卡在了ARIMA(data,(p,1,q)).fit().bic
且直接运行ARIMA(data, (1, 1, 1)).fit()出错。
考虑可能是python与statsmodels版本不匹配。
在https://www.lfd.uci.edu/~gohlke/pythonlibs/#statsmodels上查看版本匹配信息,( cp后面的数字表示对应的的Python版本)升级或降低statsmodels版本。