numpy中具有不同形状的高效乘法矩阵

Mar*_*yna 2 python arrays numpy python-3.x

我有两个矩阵A和B:

>>>A
[[1,1,1]
[1,1,1]]
>>>B
[2, 3]
Run Code Online (Sandbox Code Playgroud)

我想有效地将​​它们相乘得到这样的结果:

>>> A*B
[[2,2,2]
[3,3,3]]
Run Code Online (Sandbox Code Playgroud)

我正在寻找比循环迭代更有效的解决方案.有人可以帮忙吗?

jpp*_*jpp 5

您可以使用np.multiply以元素方式与广播相乘:

A = np.array([[1,1,1],
              [1,1,1]])

B = np.array([2, 3])

res = np.multiply(A, B[:, None])

print(res)

array([[2, 2, 2],
       [3, 3, 3]])
Run Code Online (Sandbox Code Playgroud)