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