关键库说明:
- re 文本数据处理 替换字符串内字符数据
- jieba 文本分词库 ,语句拆分
- WordCloud 词云图片生产库
- PIL 图像处理相,强大且历史悠久的库
- matplotlib 绘图库,无需多言
代码逻辑
- 1 读入NLP 的停用词文件 ,为了提高效率,将该数据组织为字典结构
- 2 读入待分析统计的文本数据
- 3 使用jieba进行分词操作, 包括去除空格、去掉标点符号、增加专业名词等
- 4 对分词结果进行统计汇总(数据结构set去重)
- 5 对统计结果按照频率进行排序(数据结构dic检索统计)
- 6 输出文本统计结果
- 7 读入词云形状图片,(虽然是PNG但实际要的是非透明的图片,标准的PNG数据无法使用)
- 8 按照统计结果绘制词云图像
* 其他注意事项:
- 文本编码格式为了便于处理,全部选择utf—8统一处理
- 停用词词库可以通过github去找,也可以自己制作,推荐使用:https://blog.csdn.net/woshishui68892/article/details/108203121所提供的停用词表,stopword合并后版本。
上代码:
import re
import jieba
from wordcloud import WordCloud
from PIL import Image
import matplotlib.pyplot as plt
import numpy as np
stopwords = {
}
fstop = open(r"\\vmware-host\Shared Folders\mod\ok\stopword.txt", 'r',encoding='utf-8')
for eachWord in fstop:
stopwords[eachWord