运用python制作词云(1)

时间:2024-03-27 10:54:54

我们在浏览网页时,常常会看见数据统计以词云的方式呈现。

以词云的方式呈现数据比传统的统计图更直观且更有艺术感。

制作词云的方式有许多种,最简单的是通过专门的词云软件进行词云的生成,大家自行百度,这里就不再赘述了。本文则运用python语言制作词云,因此需要一定的python基础。

jieba库的引入

词云多运用于统计文章或网页中特定词语出现的频率并用字符的大小来表现,

因此需要一种工具对文章中段落文字拆分成一个个独立的词语以便我们可以使用在词云中,

并且拆分出来的词语是符合语义的。

例如语句:程序设计语言是一种交互体系。 此语句可以拆分成以下词语:程序设计语言、是、一种、交互体系。

而jieba库可以进行拆分操作,其原理是利用一个中文词库。将待拆分的内容与分词库进行比对,找到最大概率的词组。

遇到python不懂的问题,可以加Python学习交流群:1004391443一起学习交流,群文件还有零基础入门的学习资料

jieba库的安装

在命令提示符里面输入命令来安装jieba库

pip3 install jieba

完成jieba库的安装

jieba库的运用

以下为jieba库常用的分词函数

运用python制作词云(1)

jieba.lcut(s)

jieba.lcut(s)是最常用的中文分词函数,用于精确模式,即将字符串分割成等量的中文词组。

运用python制作词云(1)

首先import jieba 以便我们可以使用jieba库中的函数

然后通过函数 jieba.lcut拆分语句,再将结果储存在words中,最后打印出来

输出结果如图,可见返回结果是列表类型

运用python制作词云(1)

jieba.lcut(s,cut_all=True)

jieba.lcut(s,cut_all=True)与jieba.clut(s)类似,不过其将所有分词可能都列出来,返回结果依然是列表类型。

运用python制作词云(1)

此处注意:words=jieba.lcut('程序设计语言是计算机的一种交互体系',cut_all=True)语句中括号内的逗号需是英文标点,否则将发生错误,另外cut_all=True中True 中的第一个字母需大写

输出结果为

运用python制作词云(1)

可见此函数在原先的基础上在对 程序设计 等词组进行了拆分,分成了 程序、设计 冗余性最大

jieba.lcut_for_search(s)

返回搜索引擎模式,首先执行精确模式,再对长词进一步切分获得结果

运用python制作词云(1)

结果如图

运用python制作词云(1)

jieba.add_word(w)

用于向jieba词库中增加新的单词

运用python制作词云(1)

结果如图

运用python制作词云(1)

可见由于向词库中添加了 一种交互体系,输出结果中也变成了 一种交互体系

在掌握运用jieba库的基础上便可以进行后续的操作

运用wordcloud库生成词云