将向量与明智的矩阵元素相乘

时间:2019-10-11 12:47:24

标签: python arrays numpy matrix

我有一个(n,1)个np数组,例如array([1 2 3]),我想将一个元素明智地乘以一个np矩阵(n,m),例如array([[1 1 1], [2 2 2], [3 3 3]]),以便我会得到:

array([[1 1 1], [4 4 4], [9 9 9]])

我该怎么做?

我尝试使用np.multiply和np.dot。

1 个答案:

答案 0 :(得分:1)

调整向量的形状,使其包含3行而不是3列:

v = np.array([1, 2, 3])
m = np.array([[1, 1, 1], [2, 2, 2], [3, 3, 3]])

u = v.reshape(*v.shape, 1)
u * m  # results in [[1, 1, 1], [4, 4, 4], [9, 9, 9]]