首页 > 解决方案 > LinAlgError:尝试使用 Arima 时 SVD 未收敛

问题描述

我尝试运行这个简单的代码:

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 预测值,而在此迭代中它刚刚停止显示错误。

标签: pythonjupyter-notebookstatsmodelsarima

解决方案


推荐阅读