[問題] 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