使用Pandas计算候选人bush、gore的县域平均得票数
候选人县域平均得票数计算实现
需求说明
- 基于Pandas处理选举数据集,计算bush、gore两位候选人在各县获得的平均得票数
- 函数接收两个入参:数据集文件名
filename、候选人得票对应的列名column,最终返回指定候选人的县域平均得票数
数据集字段说明
npop:县域总人口wht:白人人口占比blk:黑人人口占比his:拉美裔人口占比bush:候选人bush得票数gore:候选人gore得票数
样例数据
| npop | wht | blk | his | bush | gore |
|---|---|---|---|---|---|
| 198326 | 74.4 | 21.5 | 4.7 | 34224 | 47465 |
| 20761 | 82.4 | 16.8 | 1.5 | 5710 | 2492 |
| 146223 | 80 | 12.4 | 1.2 | 38737 | 18950 |
补全后完整代码
原有函数框架仅缺失列均值计算逻辑,直接调用Pandas Series的均值方法即可,补全后代码如下:
import pandas as pd def averageCandidateVotes(filename, column): input_data = pd.read_csv(filename) candidate_votes = input_data[column] avg_vote = candidate_votes.mean() return avg_vote
使用方式
- 计算bush的县域平均得票:调用
averageCandidateVotes("数据集文件路径.csv", "bush") - 计算gore的县域平均得票:调用
averageCandidateVotes("数据集文件路径.csv", "gore")
注:
mean()方法会自动忽略列中的空值,计算所有有效县域得票的算术平均值,符合县域平均得票的计算要求。
内容的提问来源于stack exchange,提问作者blacklion
相关产品推荐
相关产品推荐

