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词云图舆情分析的更多相关文章

  1. python词云图之WordCloud

    1. 导入需要的包package import matplotlib.pyplot as plt from scipy.misc import imread from wordcloud import ...

  2. python词云图与中文分词

    2019-12-12中文文本分词和词云图具体功能介绍与学习代码: import jiebaa="由于中文文本的单词不是通过空格或者标点符号来进行分割"#jieba.lcut()s是 ...

  3. 3.python词云图的生成

    安装库 pip install jieba wordcloud matplotlib 准备 txt文本 字体(simhei.ttf) 词云背景图片 代码 import matplotlib.pyplo ...

  4. python绘制WordCloud词云图

    目录 前言 核心代码 测试 前言 当我们想快速了解书籍.小说.电影剧本中的内容时,可以绘制 WordCloud 词云图,显示主要的关键词(高频词),可以非常直观地看到结果 核心代码 from word ...

  5. Python模块---Wordcloud生成词云图

    wordcloud是Python扩展库中一种将词语用图片表达出来的一种形式,通过词云生成的图片,我们可以更加直观的看出某篇文章的故事梗概. 首先贴出一张词云图(以哈利波特小说为例): 在生成词云图之前 ...

  6. python 数据分析--词云图,图形可视化美国竞选辩论

    这篇博客从用python实现分析数据的一个完整过程.以下着重几个python的moudle的运用"pandas",""wordcloud"," ...

  7. python绘制中文词云图

    准备工作 主要用到Python的两个第三方库 jieba:中文分词工具 wordcloud:python下的词云生成工具 步骤 准备语料库,词云图需要的背景图片 使用jieba进行分词,去停用词,词频 ...

  8. 词云wordcloud类介绍&python制作词云图&词云图乱码问题等小坑

    词云图,大家一定见过,大数据时代大家经常见,我们今天就来用python的第三方库wordcloud,来制作一个大数据词云图,同时会降到这个过程中遇到的各种坑, 举个例子,下面是我从自己的微信上抓的微信 ...

  9. python爬虫+词云图,爬取网易云音乐评论

    又到了清明时节,用python爬取了网易云音乐<清明雨上>的评论,统计词频和绘制词云图,记录过程中遇到一些问题 爬取网易云音乐的评论 一开始是按照常规思路,分析网页ajax的传参情况.看到 ...

随机推荐

  1. NOIP2001T4car的旅行计划

    洛谷传送门 一看数据就是floyed(毕竟年代久远),然而建图不是那么好贱好建,只知道三个机场,需要判断斜边来求第4个机场坐标. 往后一些麻烦的建图. 最后floyed就好. --代码 #includ ...

  2. C# treeview 使用笔记

    treeView默认 展开 treeView1.ExpandAll(); treeview判断点击节点: private void treeView1_AfterSelect(object sende ...

  3. Android事件分发机制详解

    事件分发机制详解 一.基础知识介绍 1.经常用的事件有:MotionEvent.ACTION_DOWN,MotionEvent.ACTION_MOVE,MotionEvent.ACTION_UP等 2 ...

  4. WPF 杂谈——入门介绍

    对于WPF的技术笔者是又爱又恨.现在WPF的市场并不是很锦气.如果以WPF来吃饭的话,只怕会饿死在街头.同时现在向面WEB开发更是如火冲天.所以如果是新生的话,最好不要以WPF为主.做为选择性来学习一 ...

  5. [工具技巧] SecureCRT使用技巧 V1.0

    本文档适用对象为需要使用secureCRT做系统或网络等调试的工程师,其必须有用过该款软件,基础功能会使用.对于那些需要修改大量设备的配置时像远程升级等等,更应该学习本文档. 1       Secu ...

  6. SpringMVC是什么?

    一,首先是一个MVC框架. 在web模型中,MVC是一种很流行的框架,通过把Model,View,Controller分离,把较为复杂的web应用分成逻辑清晰的几部分,是为了简化开发,减少出错.还是为 ...

  7. 微坑---微信小程序ios上时间字符串转换为时间戳时,在开发工具上和安卓手机上运行成功

    给定一个时间字符串  var time="2017-02-27 16:42:53" js有三种转换为时间戳的方法:1.var timestamp = Date.parse(time ...

  8. 跨域资源共享CORS详解

    简介 CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing). 它允许浏览器向跨源服务器,发出XMLHttpRequest请 ...

  9. Python 基础之socket编程(二)

    Python 基础之socket编程(二) 昨天只是对socket编程做了简单的介绍,只是把socket通信的框架搭建起来,要对其中的功能进行进一步的扩充,就来看看今天的料哈! 一.基于tcp的套接字 ...

  10. 关于删除数组中重复元素的lintcode代码

    时间自由度为o(n),空间自由度为o(1); class Solution {public:    /**     * @param A: a list of integers     * @retu ...