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.

답변 (1개)

Jorge
Jorge 2016년 12월 28일

0 개 추천

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

Jorey
Jorey 2016년 12월 28일
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 2016년 12월 28일
편집: Jorge 2016년 12월 28일
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.
Jorey
Jorey 2016년 12월 29일
Thanks.

댓글을 달려면 로그인하십시오.

질문:

2016년 12월 28일

댓글:

2016년 12월 29일

Community Treasure Hunt

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

Start Hunting!

Translated by