Numpy数组乘法


Numpy数组乘法


元素级乘法

numpy.multiply() 或 * : 数组对应位置元素相乘

import numpy as np
# 一维数组
a = np.array([1, 2, 3, 4])
b = np.array([5, 6, 7, 8])
print(a * b)
# 多维数组
a = np.arange(9).reshape((3, 3))
b = np.arange(9, 18).reshape((3, 3))
print(a)
print(b)
print(a * b)




矩阵乘法

numpy.matmul():获取矩阵乘积,数组形状需要满足矩阵乘法要求。

import numpy as np
a = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
b = np.array([[1, 1], [2, 2], [3, 3], [4, 4]])
print(np.matmul(a, b))
print(np.matmul(b, a))



点乘(numpy.dot())

numpy.dot(): 对于一维数组,求内积,结果为1个值。对于二维数组,等价于矩阵乘法需要满足一定条件。

import numpy as np
# 一维数组
a = np.array([1, 2, 3])
b = np.array([1, 2, 3])
print(np.dot(a, b))
# 二维数组, 矩阵乘法
a = np.arange(6).reshape((2, 3))
b = np.arange(6).reshape((3, 2))
print(a)
print(b)
print(f"a点乘b:\n {a.dot(b)}")
print(f"b点乘a:\n {b.dot(a)}")




外积(numpy.outer())

numpy.outer(): 把两个多维数组ravel到一维后,第一个数组每一个数乘以第二个数组的每一行

import numpy as np
a = np.arange(4).reshape((2, 2))
b = np.arange(4).reshape((2, 2))
print(a)
print(np.outer(a, b))


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM