How to add the corresponding values in different matrices

3 次查看(过去 30 天)
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?

采纳的回答

Andrei Bobrov
Andrei Bobrov 2017-11-7
编辑:Andrei Bobrov 2017-11-8
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));

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by