反向單位矩陣
單位矩陣即對角線為 1,如下:
那么反向的單位矩陣就是反對角線為 1:
左右鏡像操作
這里采用 numpy 實現。
方案 1
import numpy as npA = np.eye(3)print(A)
B1 = np.fliplr(A)print(B1)
方案 2
B2 = A[:,::-1]print(B2)
這面這兩種方案就可以順利實現反向單位矩陣的定義了。此外,我們拓展了另外兩種操作。
上下鏡像操作
方法 1
import numpy as npb = [1, 2, 3]B = np.diag(b)print(B)# [[1 0 0]# [0 2 0]# [0 0 3]]
B3 = np.rot90(B)print(B3)# [[0 0 3]# [0 2 0]# [1 0 0]]
方法 2
B4 = np.flipud(B)print(B4)
取上三角和反對角線元素
取上三角元素
目標是:
[[1 2 3] [4 5 6] [7 8 9]] ==> [2. 3. 6.]
import numpy as nprow = 3A = np.arange(row**2)+1A = np.mat(A.reshape([row, row]))# print(A)def ReduceData(R_xx, row): ''' 取上三角元素 ''' vector = [] for i in range(0, row): a = R_xx[i, i + 1:] vector = np.append(vector, a) return vectorprint(ReduceData(A, row))
取反對角線元素
[[1 2 3] [4 5 6] [7 8 9]]==>[3 5 7]
def DiagData(R_xx, row): ''' 取反對角線元素 ''' # vector = [] vector = np.rot90(R_xx) vector = np.diag(vector) return vectorprint(DiagData(A, row))
以上這篇python 實現一個反向單位矩陣示例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網之家。
新聞熱點
疑難解答