Averaging multiple cells together

12 vues (au cours des 30 derniers jours)
AJ
AJ le 26 Oct 2012
I apologize if this is a simple question, but I was wondering if there was a way to create a new cell that contained the average of the numeric values of multiple other cells so that the numeric values were only averaged with other values in the same location across the cells (for example 5 found in row 1 column 2 in cell 1 will only be averaged with other numbers in other cells that are in row 1 column 2). If it helps, I have 5 cells that each have parameters of 3000x4. Thank you.
  2 commentaires
Matt J
Matt J le 26 Oct 2012
Modifié(e) : Matt J le 26 Oct 2012
If the parameter matrices are all the same size (3000x4), why are you holding them in cells? Why not as a 3000x4x5 array? This would make the operations you're trying to do trivially easy (see my further comments below).
Image Analyst
Image Analyst le 26 Oct 2012
Excellent point. Never mess around with cell arrays when you don't have to - they always add a layer of complications, e.g. do I use parentheses of braces, etc.

Connectez-vous pour commenter.

Réponse acceptée

Matt J
Matt J le 26 Oct 2012
avgCell = {mean(cat(3,yourcell{:}),3)}
  1 commentaire
Matt J
Matt J le 26 Oct 2012
If you had held this as a 3000x4x5 array, A, this would have been as simple as
avg=mean(A,3);

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing 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