需求:

1. 加载数据

df = pd.read_csv('./data/usa_election.txt')

2. 对新数据进行总览,查看是否存在缺失数据:

方法一:isnull、notnull、any、all

方法二:df.info()

df.info()

3. 用统计学指标快速描述数值型属性的概要:

df.describe()  #统计学指标:数值型属性

4. 空值处理。可能因为忘记填写或者保密等原因,相关字段出现了空值,将其填充为NOT PROVIDE

df.fillna(value='NOT PROVIDE',inplace=True)   #空值填充为NOT PROVIDE
df.info()   #检查数据表中是否含有空值

5.异常值处理:将捐赠金额小于等于0的数据删除

df['contb_receipt_amt'] <= 0   #得到布尔值(小于0的为True),以此为行索引
df.loc[df['contb_receipt_amt'] <= 0]   #得到所有含有异常值的行数据
drop_indexs = df.loc[df['contb_receipt_amt'] <= 0].index   #得到含有异常值的行数据的行索引
df.drop(labels=drop_indexs,axis=0,inplace=True)   #删除这些行

6. 新建一列,这一列为 候选人所在的党派party

(1)先从网上查询:找到这些候选人各自的党派,然后封装成一个字典

         (2)然后利用映射,将党派关系表映射到源数据表中。

df['cand_nm'].map(parties)  #给候选者的名字映射党派
df['party'] = df['cand_nm'].map(parties)   #将映射后的党派加到原表party这一列

7. 查看party这一列中有哪些不同的元素——去重

                .unique()    去重,看Series中有几个不同的元素

df['party'].unique()

8. 统计party中不同元素出现的次数

.value_counts()   计算Series中每一种元素出现的次数

df['party'].value_counts()

9. 查看各个党派收到政治献金总数contb_receipt_amt

需要根据党派分组,然后求各自政治献金的总数

df.groupby(by='party')['contb_receipt_amt'].sum()

10. 查看具体 每天 各个党派 收到的政治献金总数contb_receipt_amt

分组:日期、党派

df.groupby(by={'party','contb_receipt_dt'])['contb_receipt_amt'].sum()

11. 将表中日期格式转化位:’yyyy-mm-dd‘

(1) 为了方便操作,先定义一个字典

(2) map()的运算方法:

def transformDate(s):day,month,year = s.split('-')# month是英文缩写,需要转化成数字,用提前准备好的字典 monthsmonth = months[month]return '20'+year+'-'+str(month)+'-'+daydf['contb_receipt_amt'] = df['contb_receipt_dt'].map(transformDate)   #对日期列进行transformDate转换

(3)转化完成。

12. 查看老兵(捐献者职业)DISABLED VETERAN支持谁?  职业中的某一类,给谁捐钱多就支持谁。

df['contbr_occupation']=='DISABLED VETERAN'    #返回的是布尔值,True为老兵
df.loc[df['contbr_occupation']=='DISABLED VETERAN']   #老兵所在行数据
#分组:根据候选人分组,再对捐赠金额求和
df.loc[df['contbr_occupation']=='DISABLED VETERAN'].groupby(by='cand_nm')  #老兵候选人分类
df[df['contbr_occupation']==DISABLED VETERAN].groupby(by='cand_nm')['contb_receipt_amt'].sum()    #老兵给每种党派捐赠献金的总数

数据分析---2012美国大选献金项目数据分析相关推荐

  1. 2012美国大选献金项目数据分析

    文章目录 1.数据载入与预览 1.1 数据加载 1.2 数据合并 1.3 数据预览 1.3.1 查看是否有空值 1.3.2用统计学指标快速描述数值型属性的概要 2.数据的预处理 2.1 数据清洗 2. ...

  2. 2012美国大选献金项目(最详细解释)

    1. 数据载入和总览 import numpy as npimport pandas as pdfrom pandas import Series,DataFrame 1.1 数据载入 df1 = p ...

  3. 项目3:美国大选献金目数据分析

    """ 需求: 1.读取数据 2.查看是否有缺失数据 3.用统计学指标快速描述数值型属性的概要 4.空值处理.可能因为忘记填写保密等原因,相关字段出现了空值,将其填充为N ...

  4. 【数据分析】使用pandas和numpy分析美国大选献金项目

    1. 数据载入与总览 1.1 数据加载 #绘图工具 import matplotlib.pyplot as plt %matplotlib inline #数据处理工具 import numpy as ...

  5. 美国大选献金项目学习笔记

    目录 要求 代码: 要求 代码: import numpy as np import pandas as pddf = pd.read_csv('./data/usa_election.txt')# ...

  6. 3 Python数据分析 美国各州人口分析案例 Pandas高级操作 美国大选献金案例 matplotlib

    Python数据分析 1 案例 美国各州人口分析 1.1 数据介绍 数据来源:https://github.com/jakevdp/data-USstates/ 1.1.1 州人口数量表 state- ...

  7. 利用python进行数据分析-14.5 2012美国大选数据分析(基础复习)

    美国大选数据分析 导入数据及相关库 数据清洗 填充缺失值 数据转换 面元化数据(分桶) 数据聚合与分组运算 时间处理 str转datetime(datetime为时间序列数据类型) 重新采样和频率转换 ...

  8. 数据分析- 2012美国总统竞选赞助数据分析

    数据分析- 2012美国总统竞选赞助数据分析 导入有关的包 1. 数据载入 1.1 数据读取 1.2 数据合并 1.3 数据基本统计分析 2. 数据清洗 2.1 缺失值处理 2.2 数据转换 2.2. ...

  9. 数据分析项目3-美国大选献金分析

    需求     加载数据     查看数据的基本信息     指定数据截取,将如下字段的数据进行提取,其他数据舍弃      cand_nm: 候选人姓名      contbr_nm:捐赠人所在州   ...

最新文章

  1. osg prebuild 准备好开发工具
  2. ACR2010_MRI骶髂关节炎症与CTX-II变化以及TNF拮抗剂治疗过程中全身炎症改变相关...
  3. 在服务器上安装网站环境,如何在服务器上搭建JSP环境,需要安装哪些软件?
  4. 格子箱被评选为12家最值得注意的亚洲初创科技公司之一
  5. 虚拟机VMware里 windows server 2003 扩充C盘方法
  6. VC中ADO连接SQLSERVER的几种标准方式?
  7. 问题1:UIView不会被释放--block中如果有self的话会造成循环引用
  8. DNS原理及其解析过程 精彩剖析
  9. N---Exponentiation
  10. TensorFlow基本计算单元与基本操作
  11. centos7下cups + samba共打印服务的教程
  12. Shell脚本学习-阶段二十六-Web服务与端口
  13. Python raw_input()
  14. 通达oa php漏洞,通达OA前台任意用户登录漏洞
  15. TRANSFORMER-TRANSDUCER:END-TO-END SPEECH RECOGNITION WITH SELF-ATTENTION
  16. 傅里叶分析之掐死教程(完整版)更新于2014.06.06
  17. 906007-10-1,Azide-PEG6-Tos叠氮化物(N3)基团可以通过点击化学与炔烃、BCN、DBCO反应
  18. 36周岁这年,我终于知道该怎么活了!
  19. 测量耐力也有算法了!仅需锻炼20分钟,就能知晓自己能跑多久
  20. #智能制造#第一章 智能制造,缘何而起?

热门文章

  1. 相机基础知识和佳能相机DPP
  2. WordCount编程及执行流程
  3. 高级shell脚本编程之函数库、信号与陷进、文件处理、数组、安全性
  4. 使用 KubeSphere 部署 Halo 开源博客系统
  5. 微星b450迫机炮主板,省电
  6. 排查计算机安全隐患,计算机安全隐患检查
  7. 支付宝小程序码管理生成
  8. 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第n次落地时,共经过多少米?第n次反弹多高?
  9. 授予人工智能计算中心解决方案的智博会金奖,对AI意味着什么?
  10. 一般计算机工作的电压,计算机的工作环境