内容正文:
《Python应用程序设计》
8.2 文本处理
1
wordcloud库与词云
1
jieba库与分词
2
目录
2
wordcloud库与词云
1
词云概念首先由美国西北大学新闻学副教授、新媒体专业主任里奇·戈登(Rich Gordon)提出。他做过编辑、记者,一直很关注网络内容发布的最新形式。“词云”就是对网络文本中出现频率较高的“关键词”予以视觉上的突出,形成“关键词云层”或“关键词渲染”,从而过滤掉大量的文本信息,使浏览网页者只要一眼扫过文本就可以领略文本的主旨。
wordcloud库与词云
1
wordcloud库与词云
1
wordcloud库是专门用于根据文本生成词云的第三方库,使用之前需要在cmd命令行中使用pip进行安装。命令为:
:/>pip install wordcloud
wordcloud库与词云
1
词云库的核心是WordCloud类,在使用之前需要引入该库。并且调用其中的方法generate()来生成词云文本,并且使用to_file()方法来保存词云图片文件。使用WordCloud类创建词云时还可以通过参数对词云的大小、颜色、形状进行设置。
wordcloud库与词云
1
参数 功能
font_path 设置需要词云展现的字体路径
width 生成图片的宽度,默认为400像素
height 生成图片的高度,默认为200像素
mask 词云的形状,默认为长方形
min_font_size 词云中最小的字号,默认为4
表1 WordCloud对象创建时使用的常见参数
wordcloud库与词云
1
参数 功能
max_font_size 词云中最大的字号
max_words 词云中显示的最大字数,默认为200
background_color 背景颜色,默认为黑色
stopwords 设置需要屏蔽的词,如果为空,则使用内置的STOPWORDS
font_step 字体步长,默认值为1
表1 WordCloud对象创建时使用的常见参数
jieba库与分词
2
在上述的案例中如果将文本替代为“生如夏花之绚烂,死如秋叶之静美”,就无法正常形成词云,原因是因为中文文本中的单词不是通过空格或者标点来进行分割的。学习完jieba分词就可以解决这个问题。
函数 功能
jieba.lcut(str) 精确模式,返回一个列表
jieba.lcut(str,cut_all=True) 全模式,返回一个列表
jieba.lcut_for_search(str) 搜索引擎模式,返回一个列表
表1 jieba库常用的函数
jieba库与分词
2
使用jieba之前需要在cmd命令行中使用pip进行安装。命令为:
:/>pip install jieba
例如:“新建自定义分词器,可用于同时使用不同词典。”进行分词的代码可以写成:
jieba库与分词
2
例如:“新建自定义分词器,可用于同时使用不同词典。”
任务描述
任务名称:将普希金诗歌分词并且生成词云
为普希金的《假如生活欺骗了你》生成词云文件poemcloud.png。
拓展任务
任务名称:将《诗经》中的诗歌分词并且生成词云
将《蒹葭》进行分词,增加“蒹葭”至分词库中,并显示词云。
THANK YOU
14
$$