【发布时间】:2018-09-01 10:38:30
【问题描述】:
我在 Matlab 中有两个矩阵:大小为 GxM 的 A 和大小为 DxM 的 B。我想创建一个矩阵C,大小为GxD,这样C(g,d)=sum(A(g,:).*B(d,:))/M。
让我用一个例子更好地解释一下
clear
A=[1 2 3;
4 5 6;
7 8 9;
10 11 12]; %GxM
B=[14 15 16;
17 18 19]; %DxM
G=size(A,1);
D=size(B,1);
M=size(A,2);
矩阵C可以得到如下:
C=zeros(G,D);
for g=1:G
for d=1:D
C(g,d)=sum(A(g,:).*B(d,:))/M;
end
end
我想避免这种双重循环,因为我的代码涉及更大维度的矩阵。你能推荐一些矢量化的东西吗?
【问题讨论】:
标签: matlab matrix vectorization