Determining the optimal number of clusters in Kmeans technique

61 vues (au cours des 30 derniers jours)
som
som le 24 Mai 2013
Réponse apportée : kira le 2 Mai 2019
I have a matrix like "A". I want to cluster its data using K-Means method.
A=[45 58 59
46 76 53
57 65 71
40 55 59
25 35 42
34 51 74
46 90 53
46 63 60
33 50 78
53 57 60
31 28 72
49 49 53
76 88 82
34 100 198
35 35 35];
I used the following command to cluster data.
[Data_clustred, c]= kmeans(A,num_cluster);
by the way, knowing the optimal number of cluster is neccessary to me.
Is there any criteria that determines the optimal numbers of clusters? if so, How can I write its programm.
any help whould be appreciated. Thanks in advance.

Réponse acceptée

Walter Roberson
Walter Roberson le 5 Fév 2014
  1 commentaire
som
som le 6 Fév 2014
Modifié(e) : som le 6 Fév 2014
Thanks for your answer. Do you have a complete MATLAB code for K-means algorithm? I mean a code that be able to import a data set, do clustering and export cluster data? Thanks in advance

Connectez-vous pour commenter.

Plus de réponses (2)

min ho lee
min ho lee le 5 Fév 2014
  1 commentaire
som
som le 6 Fév 2014
Thanks for the file. Can I ask you to email the pdf file of your answer i.e. "Community detection by signaling on complex networks.pdf" to the following email: [ anvari.t@gmail.com] Thanks in advance

Connectez-vous pour commenter.


kira
kira le 2 Mai 2019
old question, but I just found a way myself looking at matlab documentation:
klist=2:n;%the number of clusters you want to try
myfunc = @(X,K)(kmeans(X, K));
eva = evalclusters(net.IW{1},myfunc,'CalinskiHarabasz','klist',klist)
classes=kmeans(net.IW{1},eva.OptimalK);

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by