美文网首页
python 数据词云展示实例(1)- 京东商品评论

python 数据词云展示实例(1)- 京东商品评论

作者: 永恒君的百宝箱 | 来源:发表于2019-07-29 06:43 被阅读0次

记录python数据可视化库wordcloud库以及中文分词库jieba的使用及样板

简介

wordcloud库,是python非常优秀的词云展示第三方库。词云以词语为基本单位更加直观和艺术的展示文本,如下面这个示例:


19d111.jpg

jieba 是一个python实现的中文分词组件,在中文分词界非常出名,支持简、繁体中文,高级用户还可以加入自定义词典以提高分词的准确率。如果是英文的话就无需使用这个库。

两者间的关系简单说:
jieba库针对大段中文进行分词,生成各类词组,并做一些统计分析;
wordcloud将根据这些词组出现的频率进行词组的编排和生成文件,越频繁出现的,展示的词号越大;

实例

准备工作

先来看一个简单的实例,这里事先爬取了京东商品编号为100003951612的买家评论,一共爬了100页越400条的评论信息。

深度截图_dde-desktop_20190729062547.png

保存成jd_comment.txt文件。

深度截图_选择区域_20190729062759.png

jieba库基本

基本的使用只用cut_text = " ".join(jieba.lcut(contents))这一句就足够了。
wordcloud只能使用文本,词与词之间通过空格来识别。jieba.lcut(contents)会生成一个词组的list,故需要用" ".join将分好的词连接起来。

import jieba

f=open('jd_comment.txt','r')  #打开评论文件
contents=f.read() #读取内容

cut_text = " ".join(jieba.lcut(contents)) #进行分词,保存在cut_text 变量中。

wordcloud库基本

将上面的cut_text导入wordcloud,定义好生成对象的尺寸、颜色等参数,就可以生成图片了。

from wordcloud import WordCloud,ImageColorGenerator

wc = WordCloud(font_path='/usr/share/fonts/winfonts/simfang.ttf',
               background_color='White',
               max_words=1000,
               width=1000,
               height=500,
               scale=1,
               )
#font_path:设置字体,max_words:出现的最多词数量

wc.generate(cut_text)
wc.to_file("jd_comment.jpg")

效果如下图,买家对产品的评价通过这个图基本能了解清楚了:


jd_comment.jpg

完整的样板

from wordcloud import WordCloud,ImageColorGenerator
import jieba

f=open('/home/yhjbox/Desktop/jd_comments-7.28/example1/jd_comment.txt','r')  
contents=f.read()

cut_text = " ".join(jieba.lcut(contents))

wc = WordCloud(font_path='/usr/share/fonts/winfonts/simfang.ttf',
               background_color='White',
               max_words=1000,
               width=1000,
               height=500,
               scale=1,
               )
#font_path:设置字体,max_words:出现的最多词数量,mask参数=图片背景,必须要写上,另外有mask参数再设定宽高是无效的

wc.generate(cut_text)
wc.to_file("jd_comment.jpg")

相关文章

网友评论

      本文标题:python 数据词云展示实例(1)- 京东商品评论

      本文链接:https://www.haomeiwen.com/subject/juxvrctx.html