当前位置:   article > 正文

python数据分类聚类案例_python 文本聚类分析案例——从若干文本中聚类出一些主题词团...

python聚类分析案例

说明

实验要求:对若干条文本进行聚类分析,最终得到几个主题词团。

实验思路:将数据进行预处理之后,先进行结巴分词、去除停用词,然后把文档生成tfidf矩阵,再通过K-means聚类,最后得到几个类的主题词。

实验说明:如何用爬虫获取数据可以参考其他博客,这里我们直接用一个周杰伦的歌词文本为例进行分析,把28条歌词聚成3个类。

摘要

实验源数据放在文件sourceData中,中间文件放在resultData中。

源文件:

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDc1NDA5Nw==,size_16,color_FFFFFF,t_70

结果:

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDc1NDA5Nw==,size_16,color_FFFFFF,t_70

1、结巴分词

直接上代码,经测试后,我采用的是精确模式,效果最好。

# jieba分词 精确模式

def get_jiebaword():

# enconding视文本保存的编码而定,utf-8或gbk

try:

with open('sourceData/JayZhou.txt', "r", encoding='gbk') as fr:

lines = fr.readlines()

except FileNotFoundError:

print("no file like this")

jiebaword = []

for line in lines:

line = line.strip('\n')

# 清除多余的空格

line = "".join(line.split())

# 默认精确模式

seg_list = jieba.cut(line, cut_all=False)

word = "/".join(seg_list)

jiebaword.append(word)

return jiebaword

结果:

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号