1. 對于數組array
乘
就是對應位置的元素相乘:
X1 = np.array([[1,2], [3, 4]])X2 = X1print X2*X1[[ 1 4] [ 9 16]]
加
就是對應位置的相加:
X1 = np.array([[1,2], [3, 4]])X2 = X1print X2+X1[[2 4] [6 8]]
2. 對于矩陣matrix
乘
就是矩陣的點乘:
X1 = np.matrix([[1,2], [3, 4]])X2 = X1print X2*X1[[ 7 10] [15 22]]
加
有兩種情況,第一種是X1與X2的大小一致,就是普通的矩陣相加,即對應位置相加:
X1 = np.matrix([[1,2], [3, 4]])X2 = X1print X2+X1[[2 4] [6 8]]
第二種情況是n*1的X1 + m*1的X2(或者反過來),就會得到n*m的矩陣:
X1 = np.matrix([[1,2,3]])X2 = np.matrix([[1,2,3,4]]).Tprint X2+X1[[2 3 4] [3 4 5] [4 5 6] [5 6 7]]
3. 混用情況
在numpy中存在很多的matrix和array 運算符混用的情況,程序也能通過,但這樣很不好,盡量按照以上原則使用。
如果2維的array想要進行矩陣的點乘運算,可以用np.dot(X1, X2)
如果matrix想要進行對應位置的乘,可以用np.multiply(X2,X1)
以上這篇numpy matrix和array的乘和加實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答