2014-02-20 94 views
2

我有兩個矩陣AB。 A是N×L矩陣,B是L×N矩陣。如何將矩陣的每一行乘以matlab中另一個矩陣的對應列?

A = [1 2 3; 
    4 5 6]; 

B = [ 7 8; 
     9 10; 
    11 12]; 

我想將第一個矩陣的每一行乘以第二個矩陣的相應列。乘法之後,我將有一個(Nx1)向量。結果將是

C = [ 1*7 + 2*9 + 3*11, 
     4*8 + 5*10 + 6*12]; 

我可以用for循環執行乘法,但它對於大型矩陣無效。

ASize = size(A); 
for i = 1:ASize(1), 
    C(i) = A(i,:) * B(:,i); 
end 

有沒有更好的方法來做到這一點?

回答

2

我想這應該做的伎倆:

C = sum(A.*B', 2); 
相關問題