Python 熊猫如何获得groupby的结果并进行比较?

Python 熊猫如何获得groupby的结果并进行比较?,python,pandas,pandas-groupby,Python,Pandas,Pandas Groupby,我有宠物数据框 我可以做到: df=pets['PetID'].groupby([pets['Kind'], pets['Gender']]).count() dataframe(变量df)的结果是: 我想通过“种类”获得宠物群中最受欢迎的性别,我想得到如下结果: Kind Most_Gender Cat male Dog male Parrot female 如何处理数据在您的情况下,我们可以使用模式 pets['Gender'].groupby(pets['Kind'])

我有宠物数据框

我可以做到:

df=pets['PetID'].groupby([pets['Kind'], pets['Gender']]).count()
dataframe(变量df)的结果是:

我想通过“种类”获得宠物群中最受欢迎的性别,我想得到如下结果:

Kind   Most_Gender
Cat    male
Dog    male
Parrot female

如何处理数据

在您的情况下,我们可以使用
模式

pets['Gender'].groupby(pets['Kind']).apply(lambda x : x.mode().iloc[0])
修复您的输出
df

df.sort_values().groupby(level=0).tail(1).reset_index()

在您的情况下,我们可以使用
模式

pets['Gender'].groupby(pets['Kind']).apply(lambda x : x.mode().iloc[0])
修复您的输出
df

df.sort_values().groupby(level=0).tail(1).reset_index()

请在groupby之前添加您的
df
,这样我们就可以自己重现问题了。@Erfan My pets数据框您可以看到100多行,如何添加整个pets数据框?因为df已经显示出来了。通常最好用一个代表原始数据的示例数据框来显示您的问题,下面是一些好的示例,说明了如何实现这一点。但是现在我认为WenYoBen的答案应该可以帮助你,请在groupby之前添加你的
df
,这样我们就可以自己重现问题了。@Erfan My pets dataframe你可以看到100多行,如何添加整个pets dataframe?因为df已经显示出来了。通常最好用一个代表原始数据的示例数据框来显示您的问题,下面是一些好的示例,说明了如何实现这一点。但现在我认为温约本的回答应该对你有帮助