1、矩陣内積
arr3 = np.array([[3,4],[5,2]])
arr2 = np.array([[2,3],[3,4]])
np.dot(arr3,arr2)
array([[18, 25], [16, 23]])
2、矩陣轉置
- .T
arr
array([[ 0, 1, 2, 3, 4], [ 5, 6, 7, 8, 9], [10, 11, 12, 13, 14]])
arr.T
array([[ 0, 5, 10], [ 1, 6, 11], [ 2, 7, 12], [ 3, 8, 13], [ 4, 9, 14]])
- transpose
arr = np.arange(16).reshape((2,2,4))
arr
array([[[ 0, 1, 2, 3], [ 4, 5, 6, 7]], [[ 8, 9, 10, 11], [12, 13, 14, 15]]])
arr.transpose((1,0,2))
array([[[ 0, 1, 2, 3], [ 8, 9, 10, 11]], [[ 4, 5, 6, 7], [12, 13, 14, 15]]])
那麼現在參數變為(1,0,2),意思就是将x軸與y軸互換,簡稱換軸。
例如原本數字2的位置是(0,0,2),x軸和y軸互換,即0和0互換,置換軸之後還是(0,0,2)
原本數字8的位置是(1,0,0),置換軸之後為(0,1,0)
transpose方法是新生成一個數組
- swapaxes
還是上面的arr
arr.swapaxes(1,2)
array([[[ 0, 4], [ 1, 5], [ 2, 6], [ 3, 7]], [[ 8, 12], [ 9, 13], [10, 14], [11, 15]]])
swapaxes 類似于transpose,但隻有兩個參數,表示需要互換的兩個軸,這裡的(1,2)也等價于(2,1),表示y軸和z軸互換