Python 获取Kmeans聚类结果每一类的数据

获取聚类结果中每一类的数据,该数据类型是DataFrame

思路:获取clf_KMeans的标签,我这里是聚三类,标签就是0,1,2

将Label转成Series类型,再筛选出指定标签的res0,我筛选了1

最后在DataFrame里获取Label为1的数据

import pandas as pd
from sklearn.cluster import KMeans

  # 建立模型。n_clusters参数用来设置分类个数,即K值,这里表示将样本分为两类。 clf_KMeans
= KMeans(n_clusters=3, max_iter=10) # 模型训练。得到预测值。 print "clf_KMeans聚类中心\n", (clf_KMeans.cluster_centers_) quantity = pd.Series(clf_KMeans.labels_).value_counts() print "cluster2聚类数量\n", (quantity) #获取聚类之后每个聚类中心的数据 res0Series = pd.Series(clf_KMeans.labels_) res0 = res0Series[res0Series.values == 1] print"类别为1的数据\n",(df.iloc[res0.index])

 另外一种方法,更简洁

res = dataframe[(clf_KMeans.labels_ == 1)]

 

posted @ 2018-12-13 16:12  Rest探路者  阅读(13550)  评论(1编辑  收藏  举报
levels of contents