pandas.core.groupby.DataFrameGroupBy.filter #
- DataFrameGroupBy。过滤器(func, dropna = True, * args, ** kwargs)[来源] #
从不满足条件的组中过滤元素。
如果组中的元素不满足 func 指定的布尔标准,则会过滤它们。
- 参数:
- 函数函数
适用于每个组的标准。应返回 True 或 False。
- 德普纳布尔
删除未通过过滤器的组。默认为真;如果为 False,则评估 False 的组将填充 NaN。
- 返回:
- 数据框
笔记
每个子框架都被赋予属性“名称”,以防您需要知道您正在处理哪个组。
改变传递的对象的函数可能会产生意外的行为或错误,因此不受支持。 有关更多详细信息,请参阅使用用户定义函数 (UDF) 方法进行变异。
例子
>>> df = pd.DataFrame({'A' : ['foo', 'bar', 'foo', 'bar', ... 'foo', 'bar'], ... 'B' : [1, 2, 3, 4, 5, 6], ... 'C' : [2.0, 5., 8., 1., 2., 9.]}) >>> grouped = df.groupby('A') >>> grouped.filter(lambda x: x['B'].mean() > 3.) A B C 1 bar 2 5.0 3 bar 4 1.0 5 bar 6 9.0