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)]
作者:Rest探路者
出处:http://www.cnblogs.com/Java-Starter/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意请保留此段声明,请在文章页面明显位置给出原文连接
Github:https://github.com/cjy513203427