Python3 LinAlgError: SVD did not converge in Linear Least Squares

有用的话记得回过头请给本文点个赞,感谢您的支持!

LinAlgError: SVD did not converge in Linear Least Squares

说明在拟合时,y值里存在nan值,ps:虽然你的原始文件中可能没有nan值,但是可能存在数值类型不是float型或完全的整型的数据,导致读出来的数据中有nan值,我就遇到一个,如图,读出来有一个是nan值,原始文件中是一个float型数字。
Python3 LinAlgError: SVD did not converge in Linear Least Squares_第1张图片

解决方法,去掉该数据。

y = lsit(y)
nan_index = []
for i in range(len(y)):
    if y[i] == np.nan:
        nan_index.append(i)
    else:
        continue
for i in nan_index:
    y.pop(i)
    x.pop(i)

重新拟合,就不存在该问题了。

你可能感兴趣的:(Python,最小二乘法法,收敛)