当前位置:   article > 正文

LinAlgError: Singular matrix 问题解决_raise linalgerror("singular matrix")

raise linalgerror("singular matrix")

错误log

  1. c:\Program Files\Python39\lib\site-packages\numpy\linalg\linalg.py in inv(a)
  2. 543 signature = 'D->D' if isComplexType(t) else 'd->d'
  3. 544 extobj = get_linalg_error_extobj(_raise_linalgerror_singular)
  4. --> 545 ainv = _umath_linalg.inv(a, signature=signature, extobj=extobj)
  5. 546 return wrap(ainv.astype(result_t, copy=False))
  6. 547
  7. c:\Program Files\Python39\lib\site-packages\numpy\linalg\linalg.py in _raise_linalgerror_singular(err, flag)
  8. 86
  9. 87 def _raise_linalgerror_singular(err, flag):
  10. ---> 88 raise LinAlgError("Singular matrix")
  11. 89
  12. 90 def _raise_linalgerror_nonposdef(err, flag):
  13. LinAlgError: Singular matrix

错误原因:

一些矩阵不可逆,所以求逆会报错。

解决办法:换为用伪逆求即可。

即把np.linalg.inv改为np.linalg.pinv即可。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/556805
推荐阅读
相关标签
  

闽ICP备14008679号