import jieba.analyse
text='关键词是能够表达文档中心内容的词语,常用于计算机系统标引论文内容特征、信息检索、系统汇集以供读者检阅。关键词提取是文本挖掘领域的一个分支,是文本检索、文档比较、摘要生成、文档分类和聚类等文本挖掘研究的基础性工作'
keywords=jieba.analyse.extract_tags(text, topK=10, withWeight=True, allowPOS=())
print(keywords)
#结果:输出前10个值,极其频率
‘’‘
[('文档', 0.7683580497346154), ('文本', 0.4587102868907692), ('关键词', 0.45658796811333335), ('挖掘', 0.37005466278512816), ('文本检索', 0.30653250007435895), ('聚类', 0.30653250007435895), ('标引', 0.2949431379282051), ('信息检索', 0.2796139840615385), ('内容', 0.2632965833297436), ('计算机系统', 0.23367143356897435)]
’‘’
jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=())
sentence 为待提取的文本
topK 为返回几个 TF/IDF 权重最大的关键词,默认值为 20
withWeight 为是否一并返回关键词权重值,默认值为 False
allowPOS 仅包括指定词性的词,默认值为空,即不筛选
在开始编写程序之前,我们先了解一下词云图的作用,我们拿到一篇文章,想得到一些关键词,但文章篇幅很大,无法短时间得到关键词,这时我们可以通过程序将文章中的每个词组识别出来,统计每个词组出现的次数,出现次数越多,字号越大,最后吧所有词组拼成一张图,这就是词云图了。
现在开始写程序
import jieba
import wordcloud
import imageio
首先,我们导入 jieba,wordcloud库,这2个库是第三方库,需要自己安装,imageio是python自带库不需要安装
安装方法:
pip install jieba
pip install wordcloud
Ps:因为我用的是Windows系统,所以这里只有Windows系统安装方法,其他系统需要读者去网上自寻
第二步
我们打开需要制作词云图的文件
将需要制作词云的词汇放入txt文件中,如下所示:
with open('data/4.txt',encoding='utf-8') as f:
t=f.read()
下面我们将文章中的词组提出来
ls=jieba.lcut(t)
txt=" ".join(ls)
我们现在已经把所有词组提取出来,以空格分开,并保存在txt中
下一步,我们需要定义一个词云
w=wordcloud.WordCloud(width=2000,
height=1400,
font_path="msyh.ttc")
Width=2000,height=1400及词云图,高1400像素,宽2000像素,font_path=”msyh.ttc”,及使用微软雅黑字体,这些参数读者可以随意修改。
现在我们将词组变量txt导入词云对象w中并保存
w.generate(txt)
w.to_file(r'F:\pic5.png')
如图所示,我们制作的词云图为黑色,且不美观,不具有可观性,这时我们进行下一步,对词云图的颜色,型状进行修饰
首先,关于词云图的颜色问题,因为wordcloud函数存在默认背景色,改变背景色发法
w=wordcloud.WordCloud(width=2000,
height=1400,
font_path="msyh.ttc",
background_color='white')
这里我将背景色定义为白色
紫色 purple 粉红色 pink
蓝色 blue 红色 red
黑 色 black 黄 色yellow
青 色 cyan金 色 glod
棕色 brown 白色 white
你也可以使用其他颜色单词,这时你可能会想如何修改字体的颜色