在 Pandas 中,你可以对分组后的数据进行过滤,根据每个组的特性选择或排除特定的组。这通常通过 groupby
结合 filter
方法实现。
filter
方法,可以根据分组的属性(如组内均值、最大值等)决定是否保留整个组。# 准备数据和示例代码的运行结果,用于案例 50
# 示例数据
data_grouped_filtering = {
'Group': ['A', 'A', 'B', 'B', 'C', 'C'],
'Values': [10, 20, 5, 15, 30, 40]
}
df_grouped_filtering = pd.DataFrame(data_grouped_filtering)
# 分组后的过滤
filtered_groups = df_grouped_filtering.groupby('Group').filter(lambda x: x['Values'].mean() > 15)
df_grouped_filtering, filtered_groups
在这个示例中,我们根据每个组的平均值是否大于 15 来决定是否保留该组。
原始 DataFrame (df_grouped_filtering
):
Group Values
0 A 10
1 A 20
2 B 5
3 B 15
4 C 30
5 C 40
过滤后的 DataFrame (filtered_groups
):
Group Values
4 C 30
5 C 40
这个结果展示了只有组 C
的平均值大于 15,因此只有组 C
被保留。分组后的过滤是数据处理和分析中的一个重要技术,尤其在处理分组数据时。