[问题] inv求反矩阵出问题

楼主: sonicstars (昊旱)   2017-09-20 12:51:50
各位前辈大家好
我利用numpy.linalg.inv求算反矩阵的时候遇到了无法求解的问题
我的matrix名称为betai,其数值如下
[[3935.3477999999996 2495.1955999999996 1586.1095]
[2495.1955999999996 1582.2803999999999 1005.8091999999998]
[1586.1095000000000 1005.8091999999998 639.3906]]
matrix的其他资讯
https://imgur.com/Db0cwTO
然后会跳这个错误讯息
https://imgur.com/x8LClWD
https://imgur.com/6PbCMm2
在爬版之后原本以为与这位的问题差不多
https://www.ptt.cc/bbs/Python/M.1466588274.A.BAD.html
使用这位先进的解法
https://www.ptt.cc/bbs/Python/M.1466650959.A.B2B.html
撰写程式码:
betai = numpy.dot(x.T, x)
IMatrix = numpy.eye(betai.shape[1])
B = IMatrix - betai
binv = numpy.linalg.solve(betai, B)
则是跳出这样的错误讯息
https://imgur.com/jIObslM
https://imgur.com/bup14A9
请问我是否漏了什么?是否有其他的方法可以求反矩阵?
作者: amarco (amarco)   2017-09-20 14:33:00
我用你给的矩阵去求反矩阵没问题欸。 np.linalg.inv(a)
作者: KSJ (阿真)   2017-09-20 16:14:00
请检查建立Matrix的方法 type是object很怪 另建议用array
楼主: sonicstars (昊旱)   2017-09-20 18:59:00
https://imgur.com/a/T7Wca 可能是因为,我先用pandas读取档案资料,拆出我要的资料后才进行反矩阵求取我来想想该怎么作

Links booklink

Contact Us: admin [ a t ] ucptt.com