Clear Filters
Clear Filters

How to add the corresponding values in different matrices

3 views (last 30 days)
Dear All, I have 4 matrices, the first one dimension is a= 0 by 0, the 2nd one is b= 44661 by 1, the 3rd one is c = 10 by 1 and the 4th one is d= 35533 by 1. they are vectors with different number of rows but one column each. I need to create a new vector e that equals ( a+b+c+d) in which i sum the corresponding cells but it keeps giving me this message: Matrix dimensions must agree. I know why but I need to solve it please. How can I do that?

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 7 Nov 2017
Edited: Andrei Bobrov on 8 Nov 2017
C = {a,b,c,d};
c1 = cellfun(@(x)[(1:numel(x))',x(:)],C,'un',0);
c1 = cat(1,c1{:});
out = accumarray(c1(:,1),c1(:,2));

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!