用Pandas揭秘美国选民的总统喜好

1、数据集介绍

1.1前言

本次数据分析项目主要分析美国选民和候选总统之间的关系,可预测总统候选人。主要通过ython进行数据分析以及数据可视化,包含数据集的处理、数据探索与清洗、数据分析、数据可视化四部分,利用pandas、matplotlib等第三方库带大家玩转数据分析。

1.2数据源

所有候选人信息
该文件为每个候选人提供一份记录,并显示候选人的信息、总收入、从授权委员会收到的转账、付款总额、给授权委员会的转账、库存现金总额、贷款和债务以及其他财务汇总信息。
数据字段描述详细:https://www.fec.gov/campaign-finance-data/all-candidates-file-description/
关键字段说明

  • CAND_ID 候选人ID
  • CAND_NAME 候选人姓名
  • CAND_PTY_AFFILIATION 候选人党派

数据来源:https://www.fec.gov/files/bulk-downloads/2020/weball20.zip

候选人委员会链接信息
该文件显示候选人的身份证号码、候选人的选举年份、联邦选举委员会选举年份、委员会识别号、委员会类型、委员会名称和链接标识号。
信息描述详细:https://www.fec.gov/campaign-finance-data/candidate-committee-linkage-file-description/
关键字段说明

  • CAND_ID 候选人ID
  • CAND_ELECTION_YR 候选人选举年份
  • CMTE_ID 委员会ID

数据来源:https://www.fec.gov/files/bulk-downloads/2020/ccl20.zip

个人捐款档案信息
【注意】由于文件较大,本数据集只包含2020.7.22-2020.8.20的相关数据,如果需要更全数据可以通过数据来源中的地址下载。
该文件包含有关收到捐款的委员会、披露捐款的报告、提供捐款的个人、捐款日期、金额和有关捐款的其他信息。
信息描述详细:https://www.fec.gov/campaign-finance-data/contributions-individuals-file-description/
关键字段说明

  • CMTE_ID 委员会ID
  • NAME 捐款人姓名
  • CITY 捐款人所在市
  • State 捐款人所在州
  • EMPLOYER 捐款人雇主/公司
  • OCCUPATION 捐款人职业

数据来源:https://www.fec.gov/files/bulk-downloads/2020/indiv20.zip

2、数据处理

我们需要分析候选人和捐赠人之间的关系,所以需要关联以上三张表。

2.1通过候选人ID(CAND_ID)关联候选人和委员会表ccl,然后通过委员会ID(‘CMTE_ID’)关联ccl和捐赠人
#导入相关处理包
import pandas as pd
#读取三张表,并设置表头
#1、读取候选人信息表
candidates = pd.read_csv("weball20.txt",sep="|",names=['CAND_ID','CAND_NAME','CAND_ICI','PTY_CD','CAND_PTY_AFFILIATION','TTL_RECEIPTS',
                                                          'TRANS_FROM_AUTH','TTL_DISB','TRANS_TO_AUTH','COH_BOP','COH_COP','CAND_CONTRIB',
                                                          'CAND_LOANS','OTHER_LOANS','CAND_LOAN_REPAY','OTHER_LOAN_REPAY','DEBTS_OWED_BY',
                                                          'TTL_INDIV_CONTRIB','CAND_OFFICE_ST','CAND_OFFICE_DISTRICT','SPEC_ELECTION','PRIM_ELECTION','RUN_ELECTION'
                                                          ,'GEN_ELECTION','GEN_ELECTION_PRECENT','OTHER_POL_CMTE_CONTRIB','POL_PTY_CONTRIB',
                                                          'CVG_END_DT','INDIV_REFUNDS','CMTE_REFUNDS'])
#2、读取委员会信息表
ccl = pd.read_csv("ccl.txt",sep = "|",names=['CAND_ID','CAND_ELECTION_YR','FEC_ELECTION_YR','CMTE_ID','CMTE_TP','CMTE_DSGN','LINKAGE_ID'])
#3、读取捐赠人信息表
itcont = pd.read_csv("itcont_2020_20200722_20200820.txt",sep = "|",names = ['CMTE_ID','AMNDT_IND','RPT_TP','TRANSACTION_PGI',
                                                                        
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值