特朗普退出《巴黎协定》:python词云图舆情分析

1 前言
2017年6月1日,美国特朗普总统正式宣布美国退出《巴黎协定》。宣布退出《巴黎协定》后,特朗普似乎成了“全球公敌”。
- 特斯拉总裁马斯克宣布退出总统顾问团队
- 迪士尼董事长离开总统委员会
- 谷歌等25家大公司联名刊发整版广告:美国不应退出巴黎协定
- 法国总统马克龙:特朗普宣布退出《巴黎协定》是“错误”之举
- ……
在此背景下,本文以python词云图分析的方式来了解下相关情况。
2 特朗普演讲内容分析
首先来看下特朗普宣布退出《巴黎协定》时都说了啥。
特朗普宣布退出《巴黎协定》的演讲内容(英文)来自美国政府的官方网站,将其演讲内容存入文本文件中(statement.txt)。
对其演讲内容进行词云图分析后,得到如下结果:
从上图可看出,整个讲话中,”美国”(United states, America)出现的次数最多,其他的词语除巴黎协定外包括就业、工作等。
可见其核心关注点还是在“美国”,跟其就职演讲的口号“Make America Great Again”的基本思路是一致的,还是一切以美国为重。
具体分析的代码如下:
# -*- coding: utf-8 -*-
"""
@author: lemon
欢迎关注微信公众号:“Python数据之道”
"""
import jieba
from wordcloud import WordCloud, ImageColorGenerator
import matplotlib.pyplot as plt
import os
import PIL.Image as Image
import numpy as np
# 读取文本内容
with open('statement.txt') as f:
text = f.read()
f.close()
# 首先使用 jieba 中文分词工具进行分词
wordlist = jieba.cut(text, cut_all=False)
# cut_all, True为全模式,False为精确模式
wordlist_space_split = ' '.join(wordlist)
d = os.path.dirname(__file__)
alice_coloring = np.array(Image.open(os.path.join(d,'colors.png')))
# my_wordcloud = WordCloud(background_color='#F0F8FF', max_words=50, mask=alice_coloring,
# max_font_size=300, random_state=42).generate(wordlist_space_split)
stop_words_list = ['applause', 'Applause']
# 对分词后的文本生成词云
my_wordcloud = WordCloud(background_color='#F0F8FF',
max_words=100,
font_step=1,
mask=alice_coloring,
random_state= 30, # 设置有多少种随机生成状态,即有多少种配色方案
max_font_size=300,
)
# Generate word cloud
my_wordcloud.generate(wordlist_space_split)
image_colors = ImageColorGenerator(alice_coloring)
plt.show(my_wordcloud.recolor(color_func=image_colors))
plt.imshow(my_wordcloud) # 以图片的形式显示词云
plt.axis('off') # 关闭坐标轴
plt.show()
my_wordcloud.to_file(os.path.join(d, 'Pairs_accord_colors_cloud.jpg'))
3 新闻媒体舆论分析
特朗普宣布退出《巴黎协定》后,各方讨论纷纷,新闻媒体上更是炸开了锅,总的来看,似乎是批评的声音占多少。
例如世界资源所发布声明:
特朗普总统退出《巴黎协定》的决定是巨大的错误
退出《巴黎协定》将造成美国外交孤立,使之与近200个国家对立。现在有194个国家展现出团结一致应对气候变化的决心,而只有叙利亚、尼加拉瓜和美国这三个国家背道而驰。
下面通过收集部分新闻媒体发布的关于美国退出《巴黎协定》的评论内容,然后通过python词云图的方式来进行分析。
收集的新闻评论内容包括(只列出标题):
- 特朗普宣布退出巴黎协议 欧洲称协议不能被重新谈判
- 特朗普宣布美国将退出《巴黎协定》 美各界反对
- 特朗普宣布美国将退出《巴黎协定》 美各界反对
- 特朗普宣布退出《巴黎协定》 众科技大佬纷纷发文反对
- 特朗普正式宣布退巴黎协定 中欧将联手反击
- 退出巴黎协定是特朗普一步错棋
- 《巴黎协定》究竟哪里得罪了特朗普?
- 世界资源研究所声明:特朗普总统退出《巴黎协定》的决定是巨大的错误
词云图以特朗普的一张图片为背景轮廓来进行分析,采用的图片如下(川普的造型还是很拽滴!):
通过词云图分析后,得到的结果如下:
具体代码跟上述分析过程类似,这里就不贴出来了。
通过上图可以看出,这个事件最出名的当然是特朗普了。从词频来看,还是“美国”出现次数最多,特朗普以美国为重的执政理念通过这些舆论也能从某些程度上体现一些出来。
4 闲谈
当然,客观的来说,特朗普宣布美国退出《巴黎协定》,其影响实际上应该是没有当年小布什政府宣布退出《京都议定书》那时的影响大,其主要原因包括两点:
- 《巴黎协定》目前已于2016年生效,全球已有190多个国家参与,美国退出的影响力有限。
- 美国退出《京都议定书》后,导致《京都议定书》推迟了4年才生效。
如需转载,请在公众号留言进行授权事宜沟通。
转载请注明文章来自微信公众号“Python数据之道”。
更多精彩内容请关注微信公众号:
“Python数据之道”
特朗普退出《巴黎协定》:python词云图舆情分析的更多相关文章
- python词云图之WordCloud
1. 导入需要的包package import matplotlib.pyplot as plt from scipy.misc import imread from wordcloud import ...
- python词云图与中文分词
2019-12-12中文文本分词和词云图具体功能介绍与学习代码: import jiebaa="由于中文文本的单词不是通过空格或者标点符号来进行分割"#jieba.lcut()s是 ...
- 3.python词云图的生成
安装库 pip install jieba wordcloud matplotlib 准备 txt文本 字体(simhei.ttf) 词云背景图片 代码 import matplotlib.pyplo ...
- python绘制WordCloud词云图
目录 前言 核心代码 测试 前言 当我们想快速了解书籍.小说.电影剧本中的内容时,可以绘制 WordCloud 词云图,显示主要的关键词(高频词),可以非常直观地看到结果 核心代码 from word ...
- Python模块---Wordcloud生成词云图
wordcloud是Python扩展库中一种将词语用图片表达出来的一种形式,通过词云生成的图片,我们可以更加直观的看出某篇文章的故事梗概. 首先贴出一张词云图(以哈利波特小说为例): 在生成词云图之前 ...
- python 数据分析--词云图,图形可视化美国竞选辩论
这篇博客从用python实现分析数据的一个完整过程.以下着重几个python的moudle的运用"pandas",""wordcloud"," ...
- python绘制中文词云图
准备工作 主要用到Python的两个第三方库 jieba:中文分词工具 wordcloud:python下的词云生成工具 步骤 准备语料库,词云图需要的背景图片 使用jieba进行分词,去停用词,词频 ...
- 词云wordcloud类介绍&python制作词云图&词云图乱码问题等小坑
词云图,大家一定见过,大数据时代大家经常见,我们今天就来用python的第三方库wordcloud,来制作一个大数据词云图,同时会降到这个过程中遇到的各种坑, 举个例子,下面是我从自己的微信上抓的微信 ...
- python爬虫+词云图,爬取网易云音乐评论
又到了清明时节,用python爬取了网易云音乐<清明雨上>的评论,统计词频和绘制词云图,记录过程中遇到一些问题 爬取网易云音乐的评论 一开始是按照常规思路,分析网页ajax的传参情况.看到 ...
随机推荐
- ios sqlite3的简单使用
第一:创建表格 //创建表格 -(void)creatTab{ NSString*creatSQL=@"CREATE TABLE IF NOT EXISTS PERSIONFO(ID INT ...
- Java解决TopK问题(使用集合和直接实现)
在处理大量数据的时候,有时候往往需要找出Top前几的数据,这时候如果直接对数据进行排序,在处理海量数据的时候往往就是不可行的了,而且在排序最好的时间复杂度为nlogn,当n远大于需要获取到的数据的时候 ...
- DHTMLX 修改方法加参数
dhtmlx下拉框选项过长,导致显示不全,所以在下拉框里加了title 具体方法如下: dhtmlXCombo.prototype.modes.checkbox.render=function(c, ...
- Java Tomcat 启动失败的解决思路
好久没写新博文了,离自己要求的每年几篇的目标也是渐行渐远. 最近在学习Java,也是从基础学习,因为我是一个.net开发人员,所以学习的成本相对低些.Java JDK,JRE,Tomact 的安装及配 ...
- Winform 使用DotNetBar 根据菜单加载TabControl
winform 如何使用TabControl 控件来做winform界面框架? 这样的效果: 首先菜单的窗口展示的承载器为TabControl 控件,这个控件本身包含多页面预览和页面初始化. 如图所示 ...
- Angularjs快速入门(一)
这系列是看<用angularjs开发下一代web应用>的笔记. angular也接触几个月,总觉得不甚明白,写起来总是不那么如意.希望这本书看完了可以改变现在的状况.好了废话不多说开始: ...
- 配置RMAN备份环境
关于配置RMAN备份环境你可以给每个目标数据库设置一些固定的配置,这些配置控制着RMAN多个方面的行为.例如,你可配置备份的保存策略.默认的备份目录.默认的备份设备类型等.你可以用show命令来查看配 ...
- 【Spark2.0源码学习】-5.Worker启动
Worker作为Endpoint的具体实例,下面我们介绍一下Worker启动以及OnStart指令后的额外工作 一.脚本概览 下面是一个举例: /opt/jdk1..0_79/ ...
- 简易版DES加密和解密详解
在DES密码里,是如何进行加密和解密的呢?这里采用DES的简易版来进行说明. 二进制数据的变换 由于不仅仅是DES密码,在其它的现代密码中也应用了二进制数据,所以无论是文章还是数字,都需要将明文变换为 ...
- 开源库RxJava、ButterKnife学习记录
1. 简介 RxJava "RxJava is a Java VM implementation of Reactive Extensions: a library for composin ...