WordCloud词云图去除停用词的正确方法
前言
之前我们已经学习了如何使用wordcloud制作英文和中文词云,今天我们接着讲解,在实际制作词云中,有很多词是没有展示出的意义的,例如我,他等主语,那如何不显示这些词了,这就涉及到停用词。
wordcloud自带停用词
wordcloud自带一个停用词表,是一个集合的数据类型。
from wordcloud import STOPWORDSprint(STOPWORDS)
如果我们需要添入一些其他的词的话,也很简单,直接用add或者update方法即可(因为这是集合数据)。
from matplotlib import pyplot as plt
from wordcloud import WordCloud,STOPWORDStext = 'my is luopan. he is zhangshan'
stopwords = STOPWORDS
stopwords.add('luopan')wc = WordCloud(stopwords=stopwords)
wc.generate(text)plt.imshow(wc)
中文停用词使用
用wordcloud库制作中文词云图,必须要分词,所以总结下来,中文中需要设置停用词的话可以有三种方法。
在分词前,将中文文本的停用词先过滤掉。
分词的时候,过滤掉停用词。
在wordcloud中设置stopwords。
在这里我们只讲解第三种方法,设置stopwords,我们需要先有一个中文停用词表,在网上下载即可,然后将停用词表清洗为集合数据格式。
首先我们读取停用词表的内容,设置为集合数据结构。
stopwords = set()
content = [line.strip() for line in open('hit_stopwords.txt','r').readlines()]
stopwords.update(content)
stopwords
接着,我们就对文本进行分词,制作词云图即可。
from matplotlib import pyplot as plt
from wordcloud import WordCloud
import jiebatext = '我叫罗攀,他叫关羽,我叫罗攀,他叫刘备'
cut_word = " ".join(jieba.cut(text))stopwords = set()
content = [line.strip() for line in open('hit_stopwords.txt','r').readlines()]
stopwords.update(content)wc = WordCloud(font_path = r'/System/Library/Fonts/Supplemental/Songti.ttc',stopwords = stopwords)
wc.generate(cut_word)plt.imshow(wc)
最后,如何美化词云图,我们下期再见~
WordCloud词云图去除停用词的正确方法相关推荐
- 中文分词与去除停用词
jieba分词的三种模式 精确模式:把文本精确的切分开,不存在冗余单词. 全模式:把文本中所有可能的词语都扫描出来,有冗余. 搜索引擎模式:在精确模式基础上,对长词再次切分. jieba库的解析 ji ...
- 去除停用词并绘制词云图
简单处理数据后绘制词云图 以前看见词云图完全没想过它是怎么做出来的,现在才知道Python是可以画词云图的,而且非常简单,只要数据处理好. # -*- coding: gb2312 -*- #codi ...
- 文本挖掘(超详细:数据获取 - 数据清洗 - 中文分词 - 去除停用词 - 词频统计 - 词云图 - 情感分析)
文本挖掘(超详细) 朋友们好,文本挖掘这篇文章写了也有一段时间了,承蒙朋友们的厚爱,作者后面有做过一个升级版的文本挖掘,但苦于没有时间一直没有更新,现在在抽时间把后面写的这个也发布出来,两篇文章的步骤 ...
- ML之NB:利用NB朴素贝叶斯算法(CountVectorizer/TfidfVectorizer+去除停用词)进行分类预测、评估
ML之NB:利用NB朴素贝叶斯算法(CountVectorizer/TfidfVectorizer+去除停用词)进行分类预测.评估 目录 输出结果 设计思路 核心代码 输出结果 设计思路 核心代码 c ...
- ML之NB:利用朴素贝叶斯NB算法(TfidfVectorizer+不去除停用词)对20类新闻文本数据集进行分类预测、评估
ML之NB:利用朴素贝叶斯NB算法(TfidfVectorizer+不去除停用词)对20类新闻文本数据集进行分类预测.评估 目录 输出结果 设计思路 核心代码 输出结果 设计思路 核心代码 class ...
- ML之NB:利用朴素贝叶斯NB算法(CountVectorizer+不去除停用词)对fetch_20newsgroups数据集(20类新闻文本)进行分类预测、评估
ML之NB:利用朴素贝叶斯NB算法(CountVectorizer+不去除停用词)对fetch_20newsgroups数据集(20类新闻文本)进行分类预测.评估 目录 输出结果 设计思路 核心代码 ...
- 中文分词后去除停用词
中文分词后去除停用词 当我们利用jieba进行中文分词时,主要是句子中出现的词语都会被划分,而有些词语是没有实际意思的,对于后续的关键词提取就会加大工作量,并且可能提取的关键词是无效的.所以在分词 ...
- 中文文本处理总结(读取文本、文本预处理、分词、去除停用词)
中文文本处理总结(读取文本.文本预处理.分词.去除停用词) 针对前面学习的 Python读取文本内容.中文文本预处理.利用jieba对中文进行分词.中文分词后去除停用词.调整jieba分词结果,我们 ...
- java 对英文句子进行 分词、去除停用词、提取词干
下面 词干提取算法 用到的jar包 lucene-analyzers-smartcn-7.6.0.jar (包含 中英 词干提取) 百度网盘链接:https://pan.baidu.com/s/15D ...
最新文章
- GoldenGate的Logdump工具使用简介
- 前端框架-Bootstrap
- First java program
- 华为p4用鸿蒙系统吗_华为p40pro是鸿蒙系统吗
- fastclick select 闪退 bug
- python 使用tsfresh进行时间序列特征提取
- 接口测试工具---apipost控制台使用
- 【ML小结14】条件随机场CRF
- 硬盘格式化恢复数据,硬盘格式化如何恢复数据
- Linux 环境下maven安装配置
- QQ扫码登录实现与原理
- origin 快捷键
- 常见分布式应用系统设计图解(十二):证券交易系统 | 极客分享第 12 期
- VS2019打包exe文件
- 51学习(2):vscode+ Embedded IDE开发环境搭建
- 163免费企业邮箱服务地址
- HDWiki的兼容性问题
- 控制 input 输入框不能输入中文,即不能在输入框中使用输入法
- JAVA基础入门学习编程
- 【python入门篇——11】字典(dict)详解