7
我有一个M x N
矩阵。我想将N
列中的每个乘以M x M
矩阵。下面是在循环中做到这一点,但我不知道如何进行矢量化。将矩阵的每列乘以另一个矩阵
u=repmat(sin(2*pi*f*t),[n 1]);
W = rand(n);
answer = size(u);
for i=1:size(u,2)
answer(:,i) = W*u(:,i);
end
我有一个M x N
矩阵。我想将N
列中的每个乘以M x M
矩阵。下面是在循环中做到这一点,但我不知道如何进行矢量化。将矩阵的每列乘以另一个矩阵
u=repmat(sin(2*pi*f*t),[n 1]);
W = rand(n);
answer = size(u);
for i=1:size(u,2)
answer(:,i) = W*u(:,i);
end
你只需要乘以两个矩阵:
answer = W*u;
想想看:在循环的每次迭代,你用一个矢量乘以矩阵。该操作的结果是一个向量,您将其保存到第i列的答案中。矩阵乘法是一个类似的事情:你可以把它理解为一个矩阵(W)乘以一组向量,形成矩阵u。
所以你的代码是好的,只是删除循环:)
不知道是否只是间隔或实际推迟。 :-) 谢谢。 – mac389