通过数据帧从pandas group中删除组

时间:2015-09-28 17:53:26

标签: python pandas

我有一个大的groupby数据帧和一个较小的id列表,它们是该数据帧的子集。 ID是组的名称。我想删除所有不在ID列表中的组。

我试过了:

for name, group in groups_copy:
    if name in ids:
        print "¯\_(ツ)_/¯"
    else:
        groups_copy.drop(groups_copy.loc[name])

并收到此错误:AttributeError: Cannot access callable attribute 'drop' of 'DataFrameGroupBy' objects, try using the 'apply' method

关于实现这一目标的最佳方法的想法?

1 个答案:

答案 0 :(得分:2)

最简单的方法可能是在分组之前将其过滤掉。

df = df[df['groupby_column'].isin(ids)]