#coding:utf-8
import jieba
import numpy as np
fr = open("sk.txt")
fr_list = fr.read()
dataList = fr_list.split("\n")
data = []
for oneline in dataList:
data.append(" ".join(jieba.cut(oneline)))
from sklearn.feature_extraction.text import CountVectorizer,TfidfTransformer
stop_words = [",","。","(",")"," 来话人","来话","2017",
'希望','部门','核实','处理',"认为"," 不合理"]
freWord = CountVectorizer(stop_words=stop_words)
fre = freWord.fit_transform(data[:50])
word = freWord.get_feature_names()
print(repr(word).decode('unicode-escape'))
print(len(word))
#加入tf-idf
transformer = TfidfTransformer()
#tf-idf和上面的fre是差不多的结果,只不过,频次变成了小数
tfidf = transformer.fit_transform(fre)
#得到权重
#print(tfidf)
weight = tfidf.toarray()
from sklearn.cluster import KMeans
kmeans = KMeans(n_clusters=5, random_state=0).fit(weight)
print(kmeans.labels_)
label = kmeans.labels_
print(len(label))
for i in range(5):
print("")
print("")
print("第"+str(i)+"类有:")
for x in range(len(label)):
if(label[x]==i):
print(dataList[x])
使用kmeans
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 题目 假设有如下八个点:(3,1)(3,2)(4,1)(4,2)(1,3)(1,4)(2,3)(2,4),使用KM...
- “前一阵子奖励给自己一本原版《How to read abook》,最开始是想练习一下英语阅读能力,花费了很多时间...