概述
重点练习 groupby() 函数的使用
1. 数据预处理:
import pandas as pd
from pandas import DataFrame, Series
import numpy as np
df = pd.read_csv('./exercise_data/train.csv')
df.head()
### 预处理
'''
# 将性别转化为数字,法1
def fun1(Sex):
if Sex == 'male':
return 1
else:
return 0
df['Sex'] = df['Sex'].apply(fun1)
df
'''
# 将性别转化为数字,法2
df['Sex'] = df['Sex'].map({'male':1, 'female':0})
df.head()
2. 性别和等级对共同生还率的影响, 利用groupby() 函数
# 按性别与等级对乘客进行分组
group_all = df.groupby(['Sex','Pclass']).count()['PassengerId']
group_all
df.groupby(['Sex','Pclass']).count():
按照性别和等级进行分组,并且计数,返回的是一个DataFrame,行索引为性别和等级对应的值构成的2维向量
# 统计生还者总数
survived_passenger_df = df[df['Survived']==1]
#对生还者按照性别与等级进行分组
survived_passenger_group = survived_passenger_df.groupby(['Sex','Pclass']).count()['PassengerId']
#计算每组生还者的比率
survived_passenger_ratio = survived_passenger_group/group_all
survived_passenger_ratio
3. 绘制柱状图
fig1 = survived_passenger_ratio.plot.bar(title='Influence of Sex and Pclass')
#在每个柱的上方显示值
for p in fig1.patches:
fig1.text(p.get_x()*1.005, p.get_height()*1.005, '%.2f%%'%p.get_height())
最后
以上就是义气星月为你收集整理的DataFrame操作巩固2——性别和等级对共同生还率的影响的全部内容,希望文章能够帮你解决DataFrame操作巩固2——性别和等级对共同生还率的影响所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复