【 在 feng321 的大作中提到: 】
: 标 题: Re: 求大佬算一下,这个矩阵的逆矩阵,是多少?谢谢
: 发信站: 水木社区 (Sun Apr 10 14:19:35 2022), 站内
:
: 谢谢,行列式确实是 9.606177199181016e-28,非常接近0. 但现在的问题是:在for循环中用 np.linalg.matrix_rank(mul),求出来的秩是3.而我把print 出来的mul,单独放到一个py文件中求秩,又是4.而且matlab可以求出来他的逆矩阵,matlab中计算逆矩阵和原矩阵的乘积,能得到单
: 位阵。而python中计算 print(np.dot(mul,ni)),却得不到单位阵。
: matlab中求秩,rank(A,tol) 中还可以设置tol
: 在numpy中求秩,有没有类似的tol设置?不然主程序中跑 的秩是3,而把数据copy出来再求秩,又是4.很不好理解啊
: 【 在 snoopyzhao 的大作中提到: 】
: : 你这个矩阵不可求逆吧
: : det(x) 几乎等于 0 了
: :
我没有你说的这两个软件
你的原始数据精度是什么样子的?你 print 出来的是一个单精度的矩阵,而内部存贮的可能是双精度,这种精度损失可能会影响到你的结果
因为 python 内部求秩不是满秩自然就没有逆矩阵了
--
FROM 117.152.203.*