Python學習-numpy高級之數組點積dot函數

Numpy 數組的點積操作函數dot

1、一維數組的點積

一維數組的點積就是計算兩個數組對應位置乘積之和,假如有兩個兩行兩列的數組a和b,那麼他們的點積計算結果爲一個數值,計算公式爲a[0] * b[0] +a[1] * b[1 +...+a[n]*b[n]。

#一維數組的dot
a=np.array([1,2,3,4])
b=np.array([5,6,7,8])
print("a")
print(a)
print("b")
print(b)

輸出結果:
a
[1 2 3 4]
b
[5 6 7 8]

2、二維數組的點積

二維數組的點積相對複雜一些,假如有數組A和數組B他們都是兩行兩列,則點積計算結果也爲兩行兩列的一個數組,假設點積數組爲C,計算公式如下。

C[0,0]=A[0,0] *B[0,0] + A[0,1] *B[1,0]:A的第一行與B的第一列,對應元素的乘積之和;

C[0,1]=A[0,0] *B[0,1] + A[0,1] *B[1,1]:A的第一行與B的第二列,對應元素的乘積之和;

C[1,0]=A[1,0] *B[0,0] + A[1,1] *B[1,0]:A的第二行與B的第一列,對應元素的乘積之和;

C[1,1]=A[1,1] *B[0,1] + A[1,1] *B[1,1]:A的第二行與B的第二列,對應元素的乘積之和;

#定義兩個點積數組
a=np.array([[3,4],[5,6]])
b=np.array([[13,14],[15,16]])
print("a")
print(a)
print("b")
print(b)

輸出結果:
a
[[3 4]
 [5 6]]
b
[[13 14]
 [15 16]]

進行點積操作

#點積dot 操作
c=np.dot(a,b)
print("c")
print(c)

輸出結果
c
[[ 99 106]
 [155 166]]

 

Python學習-numpy高級之矩陣點積vdot函數https://mp.csdn.net/postedit/92703109

發佈了15 篇原創文章 · 獲贊 21 · 訪問量 6079
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章