python矩陣運算,轉置,逆運算,共軛矩陣實例
我就廢話不多說了,大家還是直接看代碼吧!
#先定義兩個矩陣X=np.array([[1,2104,5,1,45],[1,1416,3,2,40],[1,1534,3,2,30],[1,852,2,1,36]]) y=np.array([45,40,30,36])#內積以后發現c=np.dot(X.T,X)carray([[ 4, 5906, 13, 6, 151], [ 5906, 9510932, 21074, 8856, 228012], [ 13, 21074, 47, 19, 507], [ 6, 8856, 19, 10, 221], [ 151, 228012, 507, 221, 5821]])c.Id=np.dot(c.I,X.T)Traceback (most recent call last): File '<ipython-input-59-5f34dde97959>', line 1, in <module> d=np.dot(c.I,X.T) AttributeError: ’numpy.ndarray’ object has no attribute ’I’#說明array進行內積以后已經不是array對象,成為ndarray對象,不能再進行.I,.T,.M的操作。#解決方法:把結果轉為matrix就可以a=np.matrix([[ 4, 5906, 13, 6, 151], [ 5906, 9510932, 21074, 8856, 228012], [ 13, 21074, 47, 19, 507], [ 6, 8856, 19, 10, 221], [ 151, 228012, 507, 221, 5821]])a.Imatrix([[ -4.12181049e+13, 1.93633440e+11, -8.76643127e+13, -3.06844458e+13, 2.28487459e+12], [ 1.93633440e+11, -9.09646601e+08, 4.11827338e+11, 1.44148665e+11, -1.07338299e+10], [ -8.76643127e+13, 4.11827338e+11, -1.86447963e+14, -6.52609055e+13, 4.85956259e+12], [ -3.06844458e+13, 1.44148665e+11, -6.52609055e+13, -2.28427584e+13, 1.70095424e+12], [ 2.28487459e+12, -1.07338299e+10, 4.85956259e+12, 1.70095424e+12, -1.26659193e+11]])
補充知識:矩陣和向量共軛
矩陣包括實數矩陣和復數矩陣。
矩陣的轉置是將其行列互換位置,
矩陣的共軛轉置則是在矩陣轉置的基礎上(行列互換位置)對其每一個元素取共軛。
形如 a+bi的復數,其共軛為a-bi。實數的共軛等于它本身。
所以,實數矩陣的共軛轉置矩陣就是轉置矩陣,復數矩陣的共軛轉置矩陣就是行列互換位置后每個元素取共軛。
在Fortran中,其調用函數為:
CONJG(x)
求x的共軛復數。x:C, 結果:C
以上這篇python矩陣運算,轉置,逆運算,共軛矩陣實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。