是否可以从pandas中的groupby对象中删除组(按组名称)?也就是说,在执行groupby之后,根据其名称删除结果组。
答案 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)