有没有更简洁的方法来计算Pandas群中的行数?

2024-03-28 14:22:38 发布

您现在位置:Python中文网/ 问答频道 /正文

这是一个数据表

enter image description here

为了按“Age”==“young”分组计算条件行,我使用这段代码

df.loc[(df['Age']=='young') & (df['Class'] == 'Yes'),'Class'].count()
df.loc[(df['Age']=='young') & (df['Class'] == 'No'),'Class'].count()

输出

2
3

有没有一种简洁的方法来获得行数(2和3)?你知道吗


Tags: 方法no代码dfagecount条件loc
3条回答

你也可以试试df.groupby(['Age','Class']).count()。您将通过这些值的组合得到所有计数(不仅是年龄==Young),而且您可以稍后过滤掉它。你知道吗

您可以使用:

print(df.groupby('Class').size())

如果您只想要'young'

print(df[df['Age'].eq('young')].groupby('Class').size())

在这里,您可以计算每个年龄类别的人数:

df.groupby(['Age','Class'])['Class'].count()

相关问题 更多 >