python中2D和1D数组的元素乘法

时间:2016-10-11 18:16:52

标签: python numpy

假设我有两个numpy数组:

import numpy as np
x = np.array([[1,2,3], [4,5,6], [7,8,9]])
y = np.array([-1, 1, -1])

我想以这样的方式乘以x和y,我得到z:

z = np.array([[-1,2,-3], [-4,5,-6], [-7,8,-9]])

换句话说,如果y的元素j是-1,那么x的第j行的所有元素都乘以-1。如果y的元素k是1,则x的第j行的所有元素乘以1.

我该怎么做?

1 个答案:

答案 0 :(得分:4)

只需使用乘法运算符:

x * y
Out[6]: 
array([[-1,  2, -3],
       [-4,  5, -6],
       [-7,  8, -9]])