Python 只计算一组中的雄性
我有这个数据集Python 只计算一组中的雄性,python,pandas,Python,Pandas,我有这个数据集 data = pd.DataFrame({'sex':['male','female','female','male'], 'class':[1,2,3,2], 'smoking':[12,22,33,9] }) class sex smoking 0 1 male 12 1 2 female 22 2 3 fe
data = pd.DataFrame({'sex':['male','female','female','male'],
'class':[1,2,3,2],
'smoking':[12,22,33,9]
})
class sex smoking
0 1 male 12
1 2 female 22
2 3 female 33
3 2 male 9
我按性别和班级分组:
smokers = data.groupby(['sex','class'])['smoking'].agg(sum)
sex class
female 2 22
3 33
male 1 12
2 9
现在,我只想统计男性吸烟者
我知道我能做到:
male_smokers = data[data['sex'] == 'male'].groupby(['sex','class'])['smoking'].agg(sum)
但我想这样做:
male_smokers = smokers[smokers['sex'] == 'male'].count()
这可能吗?(现在我正在接受“keyError”性爱)用于快速横截面
smokers.loc['male'].sum()
或者你可以更明确地表达你的想法
或者您可以直接从数据
data.query('sex == "male"').smoking.sum()
data.query('sex == "male"').smoking.sum()