首页 > 解决方案 > Python通过基于值过滤特定行来分组

问题描述

我有一个按某些键分组的数据框。现在我的目标是根据给定列的值选择每个组中的特定行

df_data.groupby([df_data.index, 'symbol']).filter(lambda x: x['Rank'] == 7)

我本来期望满足此条件的行,但是我收到一条错误消息,说“过滤器函数返回了一个系列,但期望一个标量布尔值”

尝试一些不同的(在谷歌搜索之后) -

df_sql.groupby([df_sql.index, 'symbol']).filter(lambda x: (x['Rank'] == 7).all())

我现在得到了 Empty DataFrame,虽然我知道它不应该是空的。

任何有关解释的帮助将不胜感激。

标签: pythonpandas-groupby

解决方案


推荐阅读