numpy库中两种对象,数组和矩阵(ndarray,matrix),两者都有三种不同的乘法,分别是 * , dot 和multiply 三种类型。以下分别进行介绍。
1.数组(ndarray)
先不废话,直接上实例:
import numpy as np
a = np.array([[1,2,3]])
b = np.array([(1,2,3),
(4,5,6)])
print(type(a),type(b))
print("a=\n",a,"\n")
print("b=\n",b,"\n")
print("a*b=\n",a*b,"\n")
print("a.dot(b.T)=\n",a.dot(b.T),"\n")
print("b.dot(a.T)=\n",b.dot(a.T),"\n")
print("np.multiply(a,b)=\n",np.multiply(a,b),"\n")
print("np.multiply(b,a)=\n",np.multiply(b,a),"\n")
结果如下:
a=
[[1 2 3]]
b=
[[1 2 3]
[4 5 6]]
<class 'numpy.ndarray'> <class 'numpy.ndarray'>
a*b=
[[ 1 4 9]
[ 4 10 18]]
a.dot(b.T)=
[[14 32]]
b.dot(a.T)=
[[14]
[32]]
np.multiply(a,b)=
[[ 1 4 9]
[ 4 10 18]]
np.multiply(b,a)=
[[ 1 4 9]
[ 4 10 18]]
2.矩阵(matrix)
也不废话,继续上实例:
a = np.mat([[1,2,3]])
b = np.mat([(1,2,3),
(

本文通过实例详细介绍了numpy库中数组和矩阵的三种乘法操作——*、dot和multiply的区别。对于数组,*和multiply作用相同,对应位置相乘;而对于矩阵,*代表矩阵乘法,dot同样表示矩阵乘法。矩阵乘法需遵循矩阵乘法规则。总结了不同运算符在数组和矩阵中的应用及行为差异。

1092

被折叠的 条评论
为什么被折叠?



