16
是否有一个八度内置函数将m X n
元素明智地与列向量相乘的大小为m
的列向量比使用循环更有效?矩阵和向量的元素明智乘法?
是否有一个八度内置函数将m X n
元素明智地与列向量相乘的大小为m
的列向量比使用循环更有效?矩阵和向量的元素明智乘法?
,因为你需要把它变成一个m x n
矩阵以及再利用可以复制的载体多次内置的逐元素乘法运算.*
:
>> A = [1 2; 3 4; 5 6];
>> B = [1; 2; 3];
>> A .* repmat(B, 1, columns(A))
ans =
1 2
6 8
15 18
我没试过安娜李尔的回答,但作为nobar评论这个答案,八度现在做广播。所以你只需要做A. * B。你会得到一个警告,会说自动产品广播正在应用
>> A.*B
warning: product: automatic broadcasting operation applied
ans =
1 2
6 8
15 18
我相信,Octave现在会自动做到这一点(他们称之为“广播”)。默认情况下,您将收到警告。 – nobar