有没有可能在不使用for循环的情况下实现下面的代码?
基本上,我们从矩阵a和b中提取每一对行向量,将它们传播到一个矩阵中,进行分量乘法,并将结果设置为结果向量。
谢谢
m = 4;
n1 = 3;
n2 = 2;
% result is a 3d array of dimensions m * n1 * n2
result = reshape(1:24, m, n1, n2);
a = reshape(1:12, m, n1)
b = reshape(1:8, m, n2)
for i = 1:m
mat = a(i, :)' .* b(i, :);
result(i, :, :) = mat;
endfor发布于 2020-07-23 12:16:16
广播也可以应用于多个多维数组:
result = a .* reshape (b, m, 1, n2);https://stackoverflow.com/questions/63046113
复制相似问题