jieba.analyse的使用:提取关键字/词频制作词云
① jieba.analyse.extract_tags 提取关键字:
print("***案例1***"*3)
txt='那些你很冒险的梦,我陪你去疯,折纸飞机碰到雨天终究会坠落,伤人的话我直说,因为你会懂,冒险不冒险你不清楚,折纸飞机也不会回来,做梦的人睡不醒!'
Key=jieba.analyse.extract_tags(txt,topK=3)
print(Key)
#-----------------------------------------------------------------------------------
print("***案例2***"*3)
# 字符串前面加u表示使用unicode编码
content = u'待输入文本'
# 第一个参数:待提取关键词的文本
# 第二个参数:返回关键词的数量,重要性从高到低排序
# 第三个参数:是否同时返回每个关键词的权重
# 第四个参数:词性过滤,为空表示不过滤,若提供则仅返回符合词性要求的关键词
keywords = jieba.analyse.extract_tags(content, topK=5, withWeight=True, allowPOS=())
# 访问提取结果
for item in keywords:
# 分别为关键词和相应的权重
print(item[0], item[1])
② jieba.analyse.textrank 提取关键字:
# 同样是四个参数,但allowPOS默认为('ns', 'n', 'vn', 'v')
# 即仅提取地名、名词、动名词、动词
keywords = jieba.analyse.textrank(content, topK=5, withWeight=True, allowPOS=('ns', 'n', 'vn', 'v'))
# 访问提取结果
for item in keywords:
# 分别为关键词和相应的权重
print(item[0], item[1])
③ 在线词云制作【可以自认定图片背景以及字体,中文的必须使用中文字体才能显示】
import jieba.analyse
# 在线制作词云 https://wordart.com/create
path = './数据挖掘测试文本.txt'
file_in = open(path, 'r',encoding='utf-8')
content = file_in.read()
# 停止词在网上找
try:
jieba.analyse.set_stop_words('./stop_words.txt')
tags = jieba.analyse.extract_tags(content, topK=100, withWeight=True)
for v, n in tags:
#权重是小数,为了凑整,乘了一万
# 中间使用 制表符\t 是为了在线录入数据时候 选择csv格式自动添加词
out_words=v + '\t' + str(int(n * 10000))
print(out_words)
with open('./out_词频.txt','a+',encoding='utf-8')as f:
f.write(out_words+'\n')
finally:
file_in.close()
效果图:
————————————————
版权声明:本文为CSDN博主「Doris_H_n_q」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Dorisi_H_n_q/article/details/82114649