ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

利用jieba库和wordcloud库,进行中文词频统计并利用词云图进行数据可视化

2022-02-25 23:33:39  阅读:287  来源: 互联网

标签:jieba words python wordcloud 词频 https counts


目录

利用jieba库和wordcloud库,进行中文词频统计并利用词云图进行数据可视化

安装jieba库

  1. 打开cmd输入pip install jieba
  2. 验证:python -m pip list

安装wordcloud

  1. 打开cmd输入pip install wheel
  2. 查看python版本:python
  3. wordcloud下载地址
  4. 选择对应的版本,例如:3.9.7版本的python,选择带39数字的
  5. 打开cmd切换到wordcloud文件的位置
  6. 输入pip install 路径

打开pycharm

  1. 创建项目
  2. pycharm右下角python
  3. 点击解释器设置(倒数第二个)
  4. 点击小齿轮,选择全部显示(第二个)
  5. 点击+号
  6. 选择系统解释器,定位到安装的python
  7. 查看有没有jieba库和wordcloud库
  8. 有就确定,开始编写代码

编写代码

字体文件获取地址

import jieba
import wordcloud
import re
import csv

#文字文件路径
text = open("E:\\python\\text1.txt","r",encoding="utf_8_sig").read()

#正则表达式去除,:。、?“;”()数字以及换行
words = jieba.lcut(re.sub(r'[,:。、?“;”()\n 0-9]',"",text))

#遍历words中所有词语,单个词语不计算在内
counts = {}
for word in words:
    if len(word) == 1:
        continue
    else:
        counts[word] = counts.get(word,0)+1   #统计次数

#合并列表的元素,成为一个句子
words_1 = ''.join(counts.keys())

#词云图的可视化
#添加字体文件,配置对象参数,文本字体路径,宽度1000,高度700,背景白色
w = wordcloud.WordCloud(font_path="E:\\font\\simsun.ttf",width=1000,height=700,background_color="white")
w.generate(" ".join(jieba.lcut(words_1)))  #加载词云文本
w.to_file("图片路径.png")  #自定义路径

#词频统计
counts = sorted(counts.items(),key = lambda x:x[1],reverse = True)   #排序
f = open('E:\\python\\01.csv','w',newline="")   #newlines=''可保证存储存的数据不空行
writer = csv.writer(f)  #创建初始化写入对象
for count in counts:
    writer.writerow(count)  #一行一行写入
f.close()

'''
参考
jieba
https://blog.csdn.net/jinsefm/article/details/80645588
https://blog.csdn.net/codejas/article/details/80356544


wordcloud
https://mathpretty.com/10951.html
https://blog.csdn.net/kun1280437633/article/details/89474284

re
https://www.runoob.com/python/python-reg-expressions.html

csv
https://www.cnblogs.com/qican/p/11122206.html
https://www.jianshu.com/p/e6768d9af085
'''

标签:jieba,words,python,wordcloud,词频,https,counts
来源: https://www.cnblogs.com/yingxu/p/15938179.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有