kmeans appear to miss obvious clusters
Afficher commentaires plus anciens
I am struggling to get kmeans to identify what appear to be fairly distinct clusters in my data. I've walked through the documentation and examples but can't improve over the images shown below (raw data plotted first followed by the kmeans result, data also attached). I've tried the different distance and start options without much success. Even giving seed values doesn't improve the clustering. Does anyone have any other suggestions I could try? My goal is to end up with each data point falling into one of 3 clusters. My last command was:
[cidx3,cmeans2] = kmeans(X,3,'dist','cosine','display','iter','Start',seeds);
where
seeds =
[0.018660 872 17.59;
0.002100 1140 18.88;
0.004652 1187 34.82]
Thank you


1 commentaire
Adam
le 7 Juil 2017
It would help if you plotted the seeds visibly on the graph. It's not very easy to see where a point is in 3d just from coordinates.
Réponse acceptée
Plus de réponses (1)
Image Analyst
le 7 Juil 2017
1 vote
You might want to normalize your data.
I don't think it's good to try to find clusters when one parameter goes from 0 to 1500 and another goes from 0 to 0.05 !!!
With these ranges, your data is basically in a skinny flat sheet, not a 3-D widely spread out space.
1 commentaire
NCramer
le 10 Juil 2017
Catégories
En savoir plus sur k-Means and k-Medoids Clustering dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
