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 Commento

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?

Accedi per commentare.

 Risposta accettata

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

2 Commenti

+1 neat and efficient
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?

Accedi per commentare.

Più risposte (0)

Categorie

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by