矩阵A:10行,50列
a1 a2 a3 ....
b1 b2 b3 ....
c1 c2 c3 .... ...
矩阵B:50行,10列
x1 x2 x3 ....
y1 y2 y3 ....
...
我想将矩阵A中每行中的数据乘以矩阵B中的列(1),结果将如下所示:
[ x1 * a1, x2 * b1, x3 * c1, x4 * d1 ...
x1 * a2, x2 * b2, x3 * c2, x4 * d2 ....
X1 *
...
然后,将矩阵A的每一行乘以矩阵8中的列(2):
[ y1 * a1, y2 * b1, y3 * c1, y4 * d1 ...
y1 * a2, y2 * b2, y3 * c2, y4 * d2 ....
Y1 * 即可。 ....]
然后,按行(3)直到列(50)
我正在寻找一个脚本:)
答案 0 :(得分:5)
您可以使用bsxfun
。
A=rand(10,50);
B=rand(50,10);
C=bsxfun(@times,A,permute(B,[3 1 2]));
此处C(:,:,1)
是您的第一个结果矩阵,C(:,:,2)
是第二个...