gpt4 book ai didi

python - Pandas groupby计数大于1

转载 作者:行者123 更新时间:2023-12-03 13:44:33 24 4
gpt4 key购买 nike

这肯定是一个简单的问题,但是,这使我有些困惑。

对于以下数据框:

df = pd.DataFrame({'c0': ['a','b','a'],'c1': ['a','bb','a'],'c2':[10,20,30]})
c0 c1 c2
0 a a 10
1 b bb 20
2 a a 30

如何获得count> 1的输出?

我试过了:
df.groupby(['c0','c1'])['c2'].count()
c0 c1
a a 2
b bb 1

必填项是:
c0  c1
a a 2

我在寻找
x = df.groupby(['c0','c1'])['c2'].count()
x[x>1]

即单线回答。

最佳答案

GroupBy.transform 用于具有与原始DataFrame相同大小的Series:

df1 = df[df.groupby(['c0','c1'])['c2'].transform('count') > 1]

或使用 DataFrame.duplicated 通过列表中的指定列过滤所有重复行:
df1 = df[df.duplicated(['c0','c1'], keep=False)]

如果性能不重要或较小的DataFrame,请使用 DataFrameGroupBy.filter :
df1 = df.groupby(['c0','c1']).filter(lambda x: len(x) > 1)

关于python - Pandas groupby计数大于1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55360314/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com