# Mean of cell array containing matrices

2 Ansichten (letzte 30 Tage)
alicia che am 15 Apr. 2020
Kommentiert: alicia che am 17 Apr. 2020
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 Kommentare-2 ältere Kommentare anzeigen-2 ältere Kommentare ausblenden

Melden Sie sich an, um zu kommentieren.

### Akzeptierte Antwort

Peng Li am 15 Apr. 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);
##### 1 Kommentar-1 ältere Kommentare anzeigen-1 ältere Kommentare ausblenden
alicia che am 17 Apr. 2020
Thank you so much!

Melden Sie sich an, um zu kommentieren.

### Kategorien

Mehr zu Shifting and Sorting Matrices finden Sie in Help Center und File Exchange

### Community Treasure Hunt

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

Start Hunting!