在pandas groupby之后删除一个组

时间:2013-06-04 05:00:12

标签: python pandas

是否可以从pandas中的groupby对象中删除组(按组名称)?也就是说,在执行groupby之后,根据其名称删除结果组。

3 个答案:

答案 0 :(得分:16)

分组过滤DataFrame已discussed。未来的大熊猫版本可能包括a more convenient way to do it

但是目前,我认为这是按名称过滤GroupBy对象grouped的最简洁方法,并返回其余组的DataFrame。

df.drop(grouped.get_group(group_name).index)

这是一个从上面的链接派生的更通用的方法:

df[grouped[0].transform(lambda x: x.name != group_name).astype('bool')]

答案 1 :(得分:1)

似乎没有直接的方法从groupby对象中删除组。我想你可以在groupby之前过滤掉那些groupby

df = df[df[group] != group_name]

答案 2 :(得分:0)

应该很容易:

df.drop(index='group_name',inplace=True)