2021年工作报告词频词云分析

对2021年zhengfu工作报告通过数据可视化生成关键词词云图,统计高频词语发现,今年出现频率最高的前五大词为:发展(137次)、建设(72次)、经济(62次)、企业(52次)、创新(43次)。以下将详细介绍一下该数据可视化实现的完整过程。

1、过程分析

程序主要分为三个步骤,第一个步骤是对报告文本进行数据处理,做一个词语切割和词频统计的工作。第二个步骤是对词频统计的结果,进行词云图可视化处理,绘制出我们需要的词云图。第三个步骤选取前面的一些关键词进行柱状图或饼图折线图等展示分析,获取自己想要的信息。

2、准备工作

1)先准备Windows的Python编程环境,下载安装配置好Python;

2)安装Pycharm ,具体的Pycharm和Anaconda安装教程可以参考以下链接;

https://shimo.im/docs/osGMxDe6E24hx6JT/read

3)安装jieba库,这个jieba库是一个非常强大的中文分词工具,强大到可以把每一个词都单独切开;

4)安装wordcloud库,这个是绘制词云图的第三方库;安装PIL库,用于处理词云图的背景图片;

5)安装matplotlib库,这个是绘制统计图的第三方库;

6)安装nump和collections库,这个是统计收集数据的第三方库;

7)准备需要分析的txt文本(网上复制工作报告全文保存为txt文本文件),还有停用词文本(chineseStopWords.txt),自己在网上下载即可。

3、代码实现

直接在Pycharm里面进行演示。

1)首先依次import导入我们需要的第三方库,分别是jieba、wordcloud、matplotlib、PIL、nump和collections。
注意如果有plt报错将matplotlib卸载安装3.0版本即可。

2)设置好柱状图XY轴可以显示中文字体,再设置坐标轴的字体格式。

此处注意字体SimHei其实就是黑体,如果系统一直报错,那么需要将字体SimHei下载下来,然后复制到venv\Lib\site-packages\matplotlib\mpl-data\fonts\ttf文件夹里面,再修改一些参数,具体可以百度查找相关的教程。

3)接下来是报告文本导入,使用jieba进行分词和词频词数统计。

首先打开我们两个txt文件,并返回一个列表:(这里需要注意的是文件编码有可能是utf-8,也有可能是gbk,我这里试了一下是gbk,另外需要注意文件路径的输入格式(符号、空格等),为避免报错最好手动输入)。

4)紧接着,我们构造一个空字典words,它接收的对象是字典类型,这样词云图才会根据键值显示对应词的大小,接着用jieba切文本,返回一个列表,然后把出现在停用词里面的词去掉,对清洗之后的词用遍历循环进行词频统计。

到了这里,我们就已经得到了我们需要的字典words了,这里面已经储存了每个词,而对应的键值就是其频数,我们测试一下“发展”这个词,在报告中出现了多少次:结果是137次。

或者用print()打印关键词的统计结果,看看是否能正常实现。结果正常,如图:

5)我们就可以直接用wordcloud绘制我们需要的词云图了。

先下载好要使用的背景图片,图片需改为白色背景,图片越高清处理速度越快,词云图效果越好。可以网上下载不同的图片生成各种图形。如果不设置图片那么默认的是长方形的图形。

6)最后在使用plt相关函数绘制柱状图。先设置柱状图的XY轴参数,显示数据数量,颜色,显示数值等。再设置XY轴和图表的名称和字体格式。

最后跑一下,结果就出来了:

从关键词分析的结果来看,目前的主旋律仍然还是主抓基础建设,搞发展,同时民生、疫情、乡村、教育、消费、粮食、数字化、养老也是报告中的高频词汇。面对疫情压力,国家能够第一个控制住,保障了人民的生命和生存安全,并且持续不断发展经济和生产力,让我对自己的国家充满了信心,坚信我们的国家定会越来越富强。

4、完整代码

最后附上完整代码:

import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np
from collections import Counter
from matplotlib.font_manager import FontProperties
file=open('C:/Python/2021政府工作报告.txt','r',encoding='gbk')
file_words=file.read()
#print(file_words)
file.close()
stopfile=open('C:/Python/chineseStopWords.txt','r',encoding='gbk')
stop_words=stopfile.read()
stopfile.close()
cut_words=jieba.lcut(file_words,cut_all=True)
words={}
for word in cut_words:if word not in stop_words:if word not in words:words[word]=1else:words[word]=words[word]+1else:pass
#print(words['发展'])
word_count = Counter(words)
print(word_count)
background = Image.open("C:/Python/地图.jpg")
graph = np.array(background)
wordcloud=WordCloud(font_path='‪C:/Windows/Fonts/simsun.ttc',mask=graph,background_color='white',max_font_size=150,random_state=30)
ciyuntu=wordcloud.fit_words(words)
plt.imshow(ciyuntu)
plt.axis('off')
#plt.show()
plt.rcParams['font.sans-serif'] = ['SimHei']  # X 轴可以显示中文,需要下载字体黑体
plt.rcParams['axes.unicode_minus'] = False  # Y 轴可以显示中文
font=FontProperties('SimHei',size=11)#设置坐标轴字体格式
x = [x[0] for x in word_count.most_common(10)]  # 统计top10个关键字
y = [x[1] for x in word_count.most_common(10)]  # 统计top10个关键字出现的次数
fig = plt.figure()
plt.grid(False)
# c = np.random.randint(0,1,len(y))
plt.bar(x, y, color='lightskyblue')
#显示每个标签值
for x,y in enumerate(y[0:]):plt.text(x,y-8,'%s' %y,ha='center')
plt.xlabel('关键词',FontProperties=font)
plt.ylabel('出现频次',FontProperties=font)
plt.title('2021政府工作报告柱状图',FontProperties=font)
plt.show()

最后结果出来看是不是挺简单的,哈哈,其实是自己一直摸索不断修改,查找bug了整整一个晚上,最后才能顺利运行,当然还有不完善的地方,后续再慢慢改进吧~

2021年工作报告词频词云分析相关推荐

  1. 爬取《政府工作报告》词云展示并做词频统计

    爬取<政府工作报告>词云展示并做词频统计 爬取<政府工作报告内容代码: from requests import * from bs4 import BeautifulSoup r= ...

  2. jieba库词频统计_如何用python对《三国演义》、《红楼梦》等名著开展词云分析及字频统计、出场统计等工作。...

    以下以<红楼梦>为例进行设计. 在制作词云图及统计之前,需要下载python的几个库,wordcloud.jieba以及imageio等,我的操作系统为Windows10,IDE环境为id ...

  3. Python文本分析实战:《跨越星弧》TapTap玩家评论内容词云分析

    许久之前写了一篇<Python网络爬虫实战>的博客,里面讲了爬虫的过程,但是没有讲如何分析.这次讲述一下用如何通过词云分析,来从这些文本数据里面获得结论 首先,回顾一下分析背景 主要是看了 ...

  4. Java后端以及web前端及echarts框架词云分析

    运用Java后端以及web前端及echarts框架词云分析做出数据分析统计可视化展示. 以下为我的项目展示截图: 开发环境: 集成开发环境(IDE):IntelliJ IDEA 2021 服务器:To ...

  5. python爬虫:词云分析最热门电影《后来的我们》

    跟闺蜜周末去看了电影<后来的我们>,被感动的一塌糊涂,回来后心血来潮,写了这么个词云分析工具~ 1 模块库使用说明 1.1 requests库 requests 是用Python语言编写, ...

  6. 大江大河2弹幕数据之词云分析、情感极性分析、主题分析、共现网络分析

    最近,自己在疯狂追<大江大河2>这部剧,作为当下最热门的电视剧之一,这部电视剧深受观众的喜爱,自从播出以后就好评不断 它主要讲述了改革开放三十年,一代人奋斗向阳的故事,看完之后深受启发,特 ...

  7. 词云分析——基于Python对天猫商品评论进行词云分析

    文章目录 0 引言 1 准备工作 2 主程序 3 分析与改进 4 可能出现的报错及解决方案 0 引言 什么是词云分析? 词云图,也叫文字云,是对文本中出现频率较高的"关键词"予以视 ...

  8. 词云分析案例_品牌案例中的案例研究词

    词云分析案例 A close-up look at Friday's design process. 近看星期五的设计过程. WORDS IN THE WILD IS A BAY-AREA NONPR ...

  9. python词云代码手机_【云计算】爬取淘宝手机品牌词云分析(python)

    本文主要向大家介绍了[云计算]爬取淘宝手机品牌词云分析(python),通过具体的内容向大家展现,希望对大家学习云计算有所帮助. 淘宝手机信息的爬取,请看这边博客(点击这里),然后我们利用其中保存的文 ...

  10. NO.16——Pathon爬取杨超越新浪微博数据做词云分析

    看到网上充斥着很多词云分析的资料,今天心血来潮,也尝试下词云分析.最近热火的<创造101>,杨超越小姐姐一直在风口浪尖,因此这里借用小姐姐的微博数据做分析. 一.准备工具 作词云分析主要用 ...

最新文章

  1. nginx 如何调用php文件,nginx php-fpm问题无法调用文件夹中的其他php文件
  2. Wintellect Collection Classes for .NET now on CodePlex
  3. 《leetcode》single-number
  4. 我的世界java版记分板_我的世界计分板指令 如何使用计分板教程
  5. android判断sd u盘,[Android Framework]获取U盘 SD 状态
  6. 温度补偿计算公式_钢材的基本计算公式(下)
  7. 金蝶kis云+sqlserver报表分析
  8. 找mysql软件的配置文件_mysql 查看当前使用的配置文件my.cnf的方法
  9. CCF201903-5 317号子任务(100分题解链接)
  10. Opencv笔记(四)——绘图函数
  11. 试试Navicat和Axere RP Pro吧
  12. 【Java必备技能三】自定义注解
  13. 网易云音乐的品牌竞争力研究
  14. win10如何解决非系统盘中出现的msdia80.dll文件
  15. 做网站有虚拟服务器,虚拟主机只能做网站吗
  16. C# 中xmlreader类的实用源码演示
  17. Word(二) Word2016 如何删除页眉的下划线
  18. 如何关闭 Intel RST
  19. armv7与armv8 cp15 cache指令
  20. Excel中插入Word文档图片链接

热门文章

  1. uni-app自定义二维码扫描及本地图片扫描
  2. JavaScript文档说明
  3. abs包含在哪个头文件_C语言abs和labs函数详解和示例
  4. Laravel文档阅读笔记-Rendering JSON(对JS变量进行赋值)
  5. mongodb的安装和使用
  6. try固定搭配_英语词汇:regret cease try等词的固定搭配用法
  7. 免费SSL证书和付费SSL证书有什么区别?
  8. 安卓android视频录制、另一部手机实时观看方案
  9. php 加密解密函数 sha,使用sha1()函数进行加密-php加密技术
  10. 感冒喝抹茶牛奶的效果