词云图在数据分析中是比较常见的可视化操作,尤其在做定性分析时,通过词云图展示对某件产品或某个现象讨论最热的词,直观又好看
词频
生成词云图之前首先要确定各个词的词频,从而知道每个词的热门程度及后续在词云中不同大小的展示(词频即每个词出现的频率)
如何计算词频呢?
下面就需要介绍一个第三方库:jieba (没错,就是你想的那个结巴。。。
jieba库:做最好的 Python 中文分词组件
Github官方文档
安装jieba
我用的是anaconda,比较方便。
直接打开anaconda promot, 输入 pip install jieba 就可
验证一下是否安装成功:
打开pycharm -> File -> Setting -> Project Interpreter
在列表中看到jieba库就说明安装成功了,如图:
jieba 切词
共有三种模式:
- 搜索引擎模式
- 全模式
- 精确模式
个人认为三种模式中精确模式最好用,最适合用来文本分析。
用我大《三体》来举个例子嘎嘎嘎
import jieba
str = '斩尽杀绝,这是对一个文明的最高重视'
'''
精确模式效果在一般情况下 效果最好
jieba.cut() 生成 generator,需要for loop 返回里面的每一个词
jieba.lcut() 生成list
'''
seg_list_search = jieba.cut_for_search(str) # 搜索引擎模式
seg_list1 = jieba.cut(str, cut_all = True) #全模式
seg_list2 = jieba.cut(str, cut_all = False) #精确模式, 默认为精确, cut_all=False 可缺省