![](/img/trans.png)
[英]Implement the scalar-wise, row-variant of the matrix-vector multiplication using nested for loops
[英]Column wise scalar multiplication of matrix x vector
基本上,我想对矩阵A和向量B进行按列的标量乘法。矩阵A的每一列都乘以向量B中的对应值。我有一个类似的方法。
def scale_matrix(self, matrix, vector):
"""
Performs scalar multiplication of matrix and vector column wise
"""
for value, index in enumerate(vector):
matrix[:, index] *= value
return matrix
我在代码的其他地方使用了numpy,我想知道是否可以仅使用numpy来实现?
如果矩阵是MxN numpy array
,向量是N向量,则只需
matrix * vector
要么
matrix *= vector
如果您想要就地。
请注意,如果矩阵或向量属于np.matrix
类,则此方法将无效。 它必须是np.ndarray
。
说明:根据numpy广播规则,如果操作数的长度形状不同,则较短的操作数将在左侧填充。 这导致形状为(M,N)和(1,N)。 广播1-轴,即沿该轴即时重复值以匹配其他操作数的形状
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.