【发布时间】:2019-08-13 01:12:39
【问题描述】:
我已经对文本数据进行了 K-means 聚类
#K-means clustering
from sklearn.cluster import KMeans
num_clusters = 4
km = KMeans(n_clusters=num_clusters)
%time km.fit(features)
clusters = km.labels_.tolist()
其中 features 是 tf-idf 向量
#preprocessing text - converting to a tf-idf vector form
from sklearn.feature_extraction.text import TfidfVectorizer
tfidf = TfidfVectorizer(sublinear_tf=True, min_df=0.01,max_df=0.75, norm='l2', encoding='latin-1', ngram_range=(1, 2), stop_words='english')
features = tfidf.fit_transform(df.keywrds).toarray()
labels = df.CD
然后我将集群标签添加到原始数据集
df['clusters'] = clusters
并按簇索引数据帧
pd.DataFrame(df,index = [clusters])
如何获取每个集群的热门词?
【问题讨论】:
标签: python-3.x machine-learning k-means tf-idf