為了區分三種乘法運算的規則,具體分析如下:
import numpy as np
函式作用
陣列和矩陣對應位置相乘,輸出與相乘陣列/矩陣的大小一致1.1陣列場景
a = np.arange(1,5).reshape(2,2)
a
array([[1, 2],
[3, 4]])
b = np.arange(0,4).reshape(2,2)
b
array([[0, 1],
[2, 3]])
np.multiply(a,b) #陣列對應元素位置相乘
array([[ 0, 2],
[ 6, 12]])
1.2 矩陣場景
np.multiply(np.mat(a),np.mat(b)) #矩陣對應元素位置相乘,利用np.mat()將陣列轉換為矩陣
matrix([[ 0, 2],
[ 6, 12]])
np.sum(np.multiply(np.mat(a),np.mat(b))) #輸出為標量
20
函式作用
對於秩為1的陣列,執行對應位置相乘,然後再相加;對於秩不為1的二維陣列,執行矩陣乘法運算;超過二維的可以參考numpy庫介紹。
a = np.arange(1,5).reshape(2,2)
a
array([[1, 2],
[3, 4]])
b = np.arange(0,4).reshape(2,2)
b
array([[0, 1],
[2, 3]])
np.dot(a,b) #對陣列執行矩陣相乘運算
array([[ 4, 7],
[ 8, 15]])
c = np.arange(1,4)
c
array([1, 2, 3])
d = np.arange(0,3)
d
array([0, 1, 2])
np.dot(c,d) #對應位置相乘,再求和
8
np.dot(np.mat(a),np.mat(b)) #執行矩陣乘法運算
matrix([[ 4, 7],
[ 8, 15]])
作用
對陣列執行對應位置相乘3.1 陣列場景對矩陣執行矩陣乘法運算
a = np.arange(1,5).reshape(2,2)
a
array([[1, 2],
[3, 4]])
b = np.arange(0,4).reshape(2,2)
b
array([[0, 1],
[2, 3]])
a*b #對應位置點乘
array([[ 0, 2],
[ 6, 12]])
(np.mat(a))*(np.mat(b)) #執行矩陣運算
matrix([[ 4, 7],
[ 8, 15]])
NumPy 矩陣乘法
numpy 支援的幾類矩陣乘法也很重要。你已看過了一些元素級乘法。你可以使用multiply函式或 運算子來實現。回顧一下,它看起來是這樣的 m np.array 1,2,3 4,5,6 m 顯示以下結果 array 1,2,3 4,5,6 n m 0.25 n 顯示以下結果 array 0.25,...
numpy 陣列和矩陣的乘法
1.當為array的時候,預設d f就是對應元素的乘積,multiply也是對應元素的乘積,dot d,f 會轉化為矩陣的乘積,dot點乘意味著相加,而multiply只是對應元素相乘,不相加 2.當為mat的時候,預設d f就是矩陣的乘積,multiply轉化為對應元素的乘積,dot d,f 為矩...
numpy 矩陣運算
numpy 通過matrix基類支援向量運算,下面是生產向量的方法 執行結果 雖然array與matrix形式上類似,但不是一回事哦 我們可以通過array生成matrix物件,matrix物件提供矩陣計算功能。from numpy import numpy 多維資料元件,不支援向量運用 a1 ar...