轮廓值的意义在于量化某一数据点到其他同类别和不同类别数据点的距离差异,平均轮廓值越大,
意味着聚类效果越好。
x = [0 1;1 0;3 2;7 7;8 7;9 7]
k = kmeans(x,3)%x为待聚类数组,3为自定义聚类中心数
numk = 6%聚类样本数
s = nan(numk,1)
for i = 1:numk
k = kmeans(x,i)
s = silhouette(x,k)
s_m(i) = mean(s)
end
figure
F = plot(1:numk,s_m,'o-');
set(gca,'LineWidth',2);
xlabel('类别数','fontsize',12)
ylabel('平均轮廓值','fontsize',12)
title('平均轮廓值关于类别数分布','fontsize',12)