# How do I efficiently find the mean and covariance of a cell containing matrices with different rows?

1 Ansicht (letzte 30 Tage)
Chak Chan am 10 Okt. 2018
Bearbeitet: ANKUR KUMAR am 10 Okt. 2018
I have a 1x15 cell which contains 15 matrices, and each of them has different number of rows but all have the same number of columns(14). I am trying to find the mean and covariance of the whole cell. I compute them by concatenating all matrices into a big matrix and use the built-in functions to get the result, which looks like this:
M = C{1};
for i=2:15
M = [M; C{i}];
end
mean = mean(M);
cov = cov(M);
I think this approach does not fully take advantage of the flexibility of cells. Is there a more efficient way to do that?
##### 0 Kommentare-1 ältere Kommentare anzeigen-1 ältere Kommentare ausblenden

Melden Sie sich an, um zu kommentieren.

### Akzeptierte Antwort

ANKUR KUMAR am 10 Okt. 2018
Bearbeitet: ANKUR KUMAR am 10 Okt. 2018
Use concatenate to mix up all cells into one matrix.
cat(2,C{:}); %you can use this only if number of rows must be same in all cells
or
After using cat, calculate mean and cov in usual manner.
As your data have the different number of rows in all cells, you cannot use cat(2,C{:}).
##### 0 Kommentare-1 ältere Kommentare anzeigen-1 ältere Kommentare ausblenden

Melden Sie sich an, um zu kommentieren.

### Kategorien

Mehr zu Matrices and Arrays 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!

Translated by