Error in using fitgmdist

Hi, I'm try to use fitgmdist to cluster high dimensional data with size of 96*879. Using
gmfit = fitgmdist(data,3,' CovarianceType','full','RegularizationValue',0.1);
Then error occurs:
X must have more rows than columns.
How can I fix this?
Thanks.

Answers (1)

Jorge
Jorge on 28 Dec 2016

0 votes

The number of colums in data (879) corresponds to the dimensionality of the data. The number of rows (96) is the number of observations.
You may need to transpose your data before using it.

3 Comments

I think this can change the structure of the data for clustering, as using X is clustered according to rows, i.e., samples, but using X' is clustered according to variables. This can cause false conclusions, am I right?
Jorge
Jorge on 28 Dec 2016
Edited: Jorge on 28 Dec 2016
You are right. I'm assuming that your data is composed of 879 samples, each sample with a dimensionality of 96. If that is the case, then you should pass data' (transposed) instead of data. If that is not the case, then you can't use fitgmdist.
Thanks.

Sign in to comment.

Asked:

on 28 Dec 2016

Commented:

on 29 Dec 2016

Community Treasure Hunt

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

Start Hunting!