how to sum multiple matrics inside a cell array?

for example:
A = cell(1,3);
A{1} = [1];
A{2} = [1];
A{3} = [1];
What's a quick command to sum these cell elements to return [3]? plus() only works for size of two.

1 commentaire

Stephen23
Stephen23 le 11 Fév 2018
Why store numeric scalars in a cell array anyway? The efficient solution to this is to convert to a numeric vector and then use the inbuilt sum, so why not skip the middle steps of using the cell array and simply store the data in a numeric array?

Connectez-vous pour commenter.

 Réponse acceptée

result = sum([A{:}]);

2 commentaires

Stephen23
Stephen23 le 11 Fév 2018
+1 neat and efficient
Mohammod Minhajur Rahman
Mohammod Minhajur Rahman le 17 Nov 2018
Modifié(e) : Mohammod Minhajur Rahman le 17 Nov 2018
Could you please suggest how it might work for matrices? I mean, if A{1} = magic(150); A{2} = magic(150); A{3} = magic(150); and the result should be a matrix of 150x150. Also, magic(150) is a sparse matrix?

Connectez-vous pour commenter.

Plus de réponses (0)

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by