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

 Accepted Answer

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 Comments

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.

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!