选择具有超过x个成员的组

时间:2016-06-22 13:28:48

标签: python pandas select pandas-groupby

pandas中有没有办法从分组数据框中选择超过x个成员的组?

类似的东西:

grouped = df.groupby(['a', 'b'])
dupes = [g[['a', 'b', 'c', 'd']] for _, g in grouped if len(g) > 1]

我无法在文档或SO中找到解决方案。

1 个答案:

答案 0 :(得分:1)

使用filter

grouped.filter(lambda x: len(x) > 1)

示例:

In [64]:
df = pd.DataFrame({'a':[0,0,1,2],'b':np.arange(4)})
df

Out[64]:
   a  b
0  0  0
1  0  1
2  1  2
3  2  3

In [65]:
df.groupby('a').filter(lambda x: len(x)>1)

Out[65]:
   a  b
0  0  0
1  0  1