0

我有这个示例数据集:

在此处输入图像描述

我要做的是查看 ID 列上的哪些类别的值严格高于 45,同时向我展示其他不是。所以它应该告诉我 ID 'a' 和 'd' 符合我的标准,而 'b' 和 'c' 不在其中。之后,我将删除行 'b' 和 'c'

最简单的方法是什么?

我试过了

def filter_func(x):
     return x['vals']>45

df.groupby('id').filter(filter_func)
df['id'].unique()

but I get this error:
filter function returned a Series, but expected a scalar bool
4

1 回答 1

1

您可以尝试这种方式:

df2 = df.groupby('id').min().reset_index()
df2.loc[df2['vals'] > 45]['id']
于 2022-01-18T01:24:50.630 回答