检查组的所有成员是否具有相同的值,然后将它们全部放入一个数据框中

我有一个像下面这样的大数据框:

Letter      Action
a       Do
b       Do
b       Do
b       Do
b       Do
c       Do
c       Don’t
c       Don’t
c       Don’t
c       Do
c       Don’t
c       Don’t
c       Don’t
c       Do

我需要获取所有行的操作的所有字母。

我想要的输出如下所示:

Letter      Action
a       Do
b       Do
b       Do
b       Do
b       Do

我试过

df1 = df[(df.groupby('Letter', as_index=False).Action.nunique().eq(1))]

但我无法得到我需要的东西。如果有人可以提供帮助,我将不胜感激。

回答

试试 transform

df1 = df[(df.groupby('Letter').Action.transform('nunique').eq(1))]

为了改进

df1 = df[(df.Action.eq('Do').groupby(df['Letter']).transform('all')]


以上是检查组的所有成员是否具有相同的值,然后将它们全部放入一个数据框中的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>