Mean of cell array containing matrices
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi,
I have a 1x10 cell array, each contains a matrix of nx2 (8x2, 9x2, 6x2, 7x2, 7x2...). I would like to take the mean of each column of the matrices, and re-sort the cell array accoring to the means. I tried to use mean and cee2mat and ran into dimension problems...Thank you in advance for helping!!!
0 commentaires
Réponse acceptée
Peng Li
le 15 Avr 2020
Not sure what do you mean by "re-sort the cell array according to the means" as you have two means corresponding to each cell. Below example shows how to take the means and each column within a cell, and sort the cell based on the mean of the first column.
% generated a 1 by 10 cell, each with a n*2 random matrix.
% n generated randomly within 1 and 20
ind = 1:10;
testCell = arrayfun(@(x) rand(randi(20), 2), ind, 'UniformOutput', 0);
% mean of each column within cell
meanInCell = cell2mat(cellfun(@mean, testCell, 'UniformOutput', 0)');
% sort by the mean of first column
[~, indSort] = sort(meanInCell(:, 1));
sortTestCell = testCell(indSort);
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Shifting and Sorting 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!