我尝试运行以下简单代码:
import pandas as pd
import numpy as np
from statsmodels.tsa.arima_model import ARIMA
data = np.array([347, 347, 347, 347, 347, 347, 347, 347, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, \
345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, \
345, 345, 344, 314])
model = ARIMA(data, order=(2,1,0))
model_fit = model.fit(disp=0)
output = model_fit.forecast()
yhat = output[0]
yhat
但它显示此错误:
LinAlgError:SVD未收敛
(来自model_fit = model.fit(disp=0)
的回溯)
注意:如果我删除数据中的最后一个单元格(314
,就可以了。
我想知道为什么会发生这种情况,因为我正在做的是在数据集中每30行循环一次,并尝试使用ARIMA预测值,并且在此迭代中它只是停止显示错误。