import numpy as np
# np.array()
# 1. np.dot() 矩阵乘法
a = np.array([[1, 2], [3, 4]])
b = np.array([[1, 2], [3, 4]])
c = np.dot(a, b)
print(c)
# 2. * 对应相乘
d = a * b
print(d)
# 3. np.multiply() 对应相乘
e = np.multiply(a, b)
print(e)
# np.mat()
# 1. np.dot() 矩阵乘法
a1 = np.mat([[1, 2], [3, 4]], dtype=np.float)
b1 = np.mat([[1, 2], [3, 4]], dtype=np.float)
c1 = np.dot(a1, b1)
print(c1)
# 2. * 矩阵乘法
C = a1 * b1
print(C)
# 3. np.multiply() 对应相乘
E = np.multiply(a1, b1)
print(E)
结果
总结
np.dot()对于array和mat都是矩阵乘法
*对于array是对应相乘,对于mat是矩阵乘法
np.multiply()对于array和mat都是对应相乘
对于列向量乘行向量,其矩阵乘法和对应相乘结果是一致的;其余情况结果不同。
本文详细介绍了使用Python的NumPy库进行矩阵运算的方法,包括np.dot()实现的矩阵乘法、*操作符在不同对象间的表现差异及np.multiply()用于元素级乘法的应用。通过具体的代码示例展示了array与mat对象在运算上的区别。
1439

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



