python 数据分析--词云图,图形可视化美国竞选辩论
这篇博客从用python实现分析数据的一个完整过程。以下着重几个python的moudle的运用“pandas”,"“wordcloud”,“matlibplot”;
1、导入数据,看看数据的结构内容:
import pandas as pd
mytext = pd.read_csv(r'F:\kaggle data\2016-us-presidential-debates\test.csv',encoding = 'iso-8859-1')
>>> mytext.head(2) ######看看数据的结构
Line Speaker Text \
0 1 Holt Good evening from Hofstra University in Hempst...
1 2 Audience (APPLAUSE) Date
0 2016/9/26
1 2016/9/26
2、清洗数据(包括剔除异常数据,新增必要字段,以及简单的字段为空的处理)
text = mytext.iloc[7:26,:].reset_index(drop=True) #行操作:前面几行是寒暄不用具体看所以删除前面7行
del text['Date'] #列操作:删除Date列
## text.insert(3,"新加列",新加列的数值)
3、制作各个candidate的言论的词云图;
import matplotlib.pyplot as plt
from wordcloud import WordCloud ##词云库
import nltk
from nltk.corpus import stopwords ##分词库
stopwords =set(stopwords("english"))
stopwords |={"will","yes"}
words = " ".join((text.Speaker=='Clinton').['Text']) ##将希拉里的发言汇集起来
cloud =WordCloud(background_color="white",width=3000,height=2500,stopwords=stopwords).generate(words)
plt.figure(1,figsize=(8,8))
plt.imshow(cloud)
plt.show()

ps:这里只是做了个简单的可视化,可以自己尝试
4、进一步挖掘数据内容【ex:此前美国媒体反映在美国竞选第一次辩论时,川普经常被打断的现象严重,我们可以用数据来观察这一现象】
trump=[3,5,7] #'Making laugh','Making applaud','Be interrupted'
clinton=[3,3,2] #'Making laugh','Making applaud','Be interrupted'
fig,ax=plt.subplots()
width=0.35
rects1 = ax.bar(ind,trump,width,color='r')
tects2 = ax.bar(ind+width,clinton,width,color='y')
ax.set_ylabel('Counts')
ax.set_title('Counts of behavior of mediator and audience')
ax.set_xticks(ind)
ax.set_xticklabels(('Making laugh','Making applaud','Be interrupted'),rotation =45)
plt.show()

根据这个观点然后去挖掘可以看到川普频繁被打断,其实后面还可以挖挖,川普在说什么内容的时候被打断(同样可以类似上面的词云的操作,有兴趣可以试下)。
python 数据分析--词云图,图形可视化美国竞选辩论的更多相关文章
- Python 数据分析中常用的可视化工具
Python 数据分析中常用的可视化工具 1 Matplotlib 用于创建出版质量图表的绘图工具库,目的是为 Python 构建一个 Matlab 式的绘图接口. 1.1 安装 Anaconada ...
- python爬虫+词云图,爬取网易云音乐评论
又到了清明时节,用python爬取了网易云音乐<清明雨上>的评论,统计词频和绘制词云图,记录过程中遇到一些问题 爬取网易云音乐的评论 一开始是按照常规思路,分析网页ajax的传参情况.看到 ...
- python 绘制词云图
1. 先下载并安装nltk包,准备一张简单的图片存入代码所在文件目录,搜集英文停用词表 import nltk nltk.download() 2. 绘制词云图 import re import nu ...
- python 做词云图
#导入需要模块 import jieba import numpy as np import matplotlib.pyplot as plt from PIL import Image from w ...
- 《Python数据分析》笔记——数据可视化
数据可视化 matplotlib绘图入门 为了使用matplotlib来绘制基本图像,需要调用matplotlib.pyplot子库中的plot()函数 import matplotlib.pyplo ...
- 使用Python写词云数据可视化
词云的应用场景 会议记录 海报制作 PPT制作 生日表白 数据挖掘 情感分析 用户画像 微信聊天记录分析 微博情感分析 Bilibili弹幕情感分析 年终总结 安装本课程所需的Python第三方模块 ...
- python词云图与中文分词
2019-12-12中文文本分词和词云图具体功能介绍与学习代码: import jiebaa="由于中文文本的单词不是通过空格或者标点符号来进行分割"#jieba.lcut()s是 ...
- python 可视化 词云图
文本挖掘及可视化知识链接 我的代码: # -*- coding: utf-8 -*- from pandas import read_csv import numpy as np from sklea ...
- (数据科学学习手札71)在Python中制作个性化词云图
本文对应脚本及数据已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 一.简介 词云图是文本挖掘中用来表征词频的数据可视化 ...
随机推荐
- [Unity3D]Unity+Android交互教程——让手机"动"起来
想要用Unity实现一个二维码扫描的功能,然后网上找插件,找到一个貌似叫EasyCodeScanner,但下载下来用用,真不好使,一导入运行就报错,调好错了再运行发现点按钮没反应,反复试了几遍发现还是 ...
- history.back新页面跳转
今天遇到一个问题,页面跳转失效,原因在于原来在本页面打开的页面现在改为在新页面打开,历史url记录找不到了,所以不能向上一个地址跳转,解决的办法是使用$_SERVER['HTTP_REFERER']获 ...
- python 线程之 threading(三)
python 线程之 threading(一)http://www.cnblogs.com/someoneHan/p/6204640.html python 线程之 threading(二)http: ...
- TComboBoxEx和 TComboBox
// TComboBoxEx cbbCity: TComboBoxEx; item: TComboExItem; cbbCity.ItemsEx.Clear; //清空 cbbProv.itemInd ...
- abort 用法讨论
同事说: TT***.factary( procedure() begin .... abort; .... end)大家在TTask中不建议用abort因为难以控制,我测试 ...
- 要将 ASP.NET 访问权限授予某个文件,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示 ASP.NET 帐户,选中所需访问权限对应的框。
找到该文件所在文件夹,右键属性,安全选项卡,添加-aspnet用户,并设置其权限为完全控制.如果还是不行,就添加一个Everyone用户并赋予完全控制权限windows server 2008中IIS ...
- 【转】iOS学习之Storyboard中的UIScrollView使用自动布局
在使用storyboard和xib时,我们经常要用到ScrollView,还有自动布局AutoLayout,但是ScrollView和AutoLayout 结合使用,相对来说有点复杂.根据实践,我说一 ...
- 【BZOJ】3437: 小P的牧场
题意 n个点,需要再一些点建立控制站,如果在第\(i\)个建站,贡献为\(a[i]\).假设前一个站为\(j<i\),则\([j+1, i]\)的点的贡献是\(\sum_{k=j+1}^{i} ...
- Python中的条件判断和循环
1.使用elif代替else if,前者是后者的缩写. 2.所以for x in ...循环就是把每个元素代入变量x,然后执行缩进块的语句. 3.Python提供一个range()函数,可以生成一 ...
- Vuforia判断当识别追踪的对象
方法一,如果有多个识别对象,在Update中循环识别对象数组,获取TrackableBehaviour组件 foreach (var item in trackObjects) { var mTrac ...