sklearn聚类算法 在Python中聚类后,如何知道哪个样本属于哪一类?

在Python中聚类后,如何知道哪个样本属于哪一类?首先可以看到聚类后的样本如果使用Python sklearn中的K-means聚类算法,算法类本身就有一些属性可以知道聚类后的情况。例如,有一些模型

在Python中聚类后,如何知道哪个样本属于哪一类?

首先可以看到聚类后的样本

如果使用Python sklearn中的K-means聚类算法,算法类本身就有一些属性可以知道聚类后的情况。

例如,有一些模型属性,clusterucentersuuuuuux是聚类后得到的聚类中心,标签uuux如上图所示,样本[1.4,0.2]对应第三个类别,聚类结果还有每个类别的聚类中心和每个类别的样本数。这种方法可以用来寻找相应的标签分类。

当然,还有一种预测方法,它可以直接输出输入样本的类标签

函数[labels]=kmeansu聚类(data,k)

[num,~]=size(data)

ind=randperm(num)

ind=ind(1:k)

centers=data(ind,:)

d=inf

labels=nan(num,1)

whiled>0

labels0=labels

dist pdist2(data,centers)

[~,labels]=min(dist,[],2)

d=sum(labels0~=labels)

fori=1:k

centers(i,:)=mean(data(labels==i,:),1)

结束

结束

结束