I used the same data, but not get the same figure

hi,
I try to built elbow code to determine the no. of clusters.I used the same data that used in the following link:
why I'm not get the same figure of elbow code in above link?
x = iris_dataset;
x=x';
d=kmeans(x,9);
for i=1:10
a=find(d==i);
for j=1:length(a)
cluster(i,j)=a(j);
end
end
for i=1:9
cluster1{i}=cluster(i,:);
var1(i)=var(cluster1{i});
end
s=sum(var1)/9;
s1=var1/s;
y(1:9)=1:9;
plot(y,s1)
thanks in advance

 Risposta accettata

Doug Hull
Doug Hull il 6 Set 2012
It looks to me like you are using the default settings for KMeans for the Start Parameter. This chooses a random starting subset. KMeans is NOT deterministic. You should expect different results each time, it is the nature of the algorithm.

2 Commenti

I do not think the reason in kmeans , but relate with somthing like scaling that thing I did not understand it.
thanks
The reason IS in the randomized selection of the start position in kmeans.
Compare d between two runs of kmeans.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by