具有相同行数的numpy逐元素乘法矢量和矩阵

时间:2020-04-03 16:55:38

标签: machine-learning python numpy

我有一个矩阵和一个向量,它们都有n行。我想让矩阵的第k行按元素乘以向量中的第k个元素,而没有for循环!我已经尝试过np.multiply,但是它不起作用。

这可能吗?感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

numpy.multiply可以做到。它具有矩阵乘法语义,因此您需要转置矩阵。 低于您想要的东西吗?

In [19]: >>> x1 = np.arange(9.0).reshape((3, 3))

In [20]: >>> x2 = np.arange(3.0)

In [21]: np.multiply(x1.T, x2.T).T
Out[21]:
array([[ 0.,  0.,  0.],
       [ 3.,  4.,  5.],
       [12., 14., 16.]])