LinAlgError: Last 2 dimensions of the array must be square


python 矩陣計算時出現錯誤

此時如果矩陣不是方陣,就會出現如下錯誤:

    

 

 

 

 這里值得注意的是:當我們這樣使用的時候,程序運行又會很正常:

 

 貌似我們求得了非方陣的逆。

 

下面我們來驗證一下:

 

 

 

仔細一看,這不是單位陣啊,筆者以為,這種方法並不可行,但帶着博客嚴謹性的想法,筆者決定看看方陣的結果。

 

 

 

 看到這里,筆者發現,方陣的求逆也出現了異常,,不由得仔細一看,,原來本該是0 的項非常小,學過數值分析的朋友們應該知道,這里是由於計算機的舍入誤差所造成的的非零問題,所以二者我們都可以將其看做是單位陣。

 

注意:此處不要隨意轉換數據類型,因為轉換數據類型會有數據精度損失,比如上述單位陣在轉換數據類型時就會產生變化,對角線上的某一位可能會變為0.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM