Adding two matrixes with different row numbers.

Illustration
Stephen - 2021-10-11T10:52:02+00:00
Question: Adding two matrixes with different row numbers.

Hi Matlabsolutions community!   I have a matrix A(mxn) and a matrix B(lxn) such as: A = [1,2,3,4,5,6,7,8,9,10; 10,11,12,13,14,15,16,17,18,19; 19,20,21,22,23,24,25,26,27,28]; B = [1,2,3,4,5,6,7,8,9,10; 2,4,6,8,10,12,14,18,18,20]; I'd like to get an output such as: out = [sum(A(1,:),B(1,:)); sum(A(1,:),B(2,:)); sum(A(2,:),B(1,:)); sum(A(2,:),B(2,:)); sum(A(3,:),B(1,:)); sum(A(3,:),B(2,:))]; Any idea about how I could code this efficiently?

Expert Answer

Profile picture of John Michell John Michell answered . 2025-11-20

Following your output image,
 
out = [sum(A(1,:),B(1,:)); sum(A(1,:),B(2,:)); sum(A(2,:),B(1,:)); sum(A(2,:),B(2,:)); sum(A(3,:),B(1,:)); sum(A(3,:),B(2,:))];

the code is like below

A = [1,2,3,4,5,6,7,8,9,10; 10,11,12,13,14,15,16,17,18,19; 19,20,21,22,23,24,25,26,27,28];
B = [1,2,3,4,5,6,7,8,9,10; 2,4,6,8,10,12,14,18,18,20];

A_sum = sum(A,2);
B_sum = sum(B,2);

for i = 1:length(A_sum)
    for j = 1:length(B_sum)
        C(i,j) = A_sum(i) + B_sum(j);
    end
end

out = rehape(C,[],1);

 


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!