Effacer les filtres
Effacer les filtres

Summing all the Matrices in a Cell Array?

12 vues (au cours des 30 derniers jours)
hithere
hithere le 5 Nov 2014
Modifié(e) : Matt J le 5 Nov 2014
Lets say i have a cell array with 3 7x2 matrices in it:
.
.
How do i sum them up so to get a single 7x2 matrix?
In this exmaple, i only have 3 matrices.
But i may have a cell array with maybe 100+ matrices.
How should i do it?
  1 commentaire
Matt J
Matt J le 5 Nov 2014
Modifié(e) : Matt J le 5 Nov 2014
You probably should not be in this situation to begin with. Whatever code you're using to create the cell array, should probably be organizing the data as a 7x2xP numeric array instead. Most operations on an MxNxP array will be more efficient than with the MxN slices split across P cells.
An exception to this is when M*N is large and you're trying to avoid the copies that MATLAB makes when you do things like
a=A(:,:,i)
but the slices would have to be very very large to warrant that.

Connectez-vous pour commenter.

Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 5 Nov 2014
Modifié(e) : Azzi Abdelmalek le 5 Nov 2014
a={rand(7,2) rand(7,2) rand(7,2)} % This is an example
b=sum(cat(3,a{:}),3)

Plus de réponses (0)

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by