Pandas中如何基于指定准确率阈值筛选DataFrame行数据
Pandas按准确率阈值筛选行实现方案
你可以直接通过Pandas的布尔索引完成筛选,如需和示例输出一致的连续索引,额外调用reset_index方法即可,完整实现代码如下:
import pandas as pd # 自定义准确率阈值,可根据需求修改为90、85等数值 threshold = 92 # 筛选Accuracy字段大于等于阈值的行,重置索引为连续序列 df_result = df_groups[df_groups['Accuracy'] >= threshold].reset_index(drop=True) # 输出验证结果 print(df_result)
逻辑说明
- 首先通过
df_groups['Accuracy'] >= threshold生成布尔掩码,该序列长度和原DataFrame行数一致,满足条件的行对应值为True,不满足为False - 用布尔掩码索引原DataFrame,即可保留所有满足条件的行
- 调用
reset_index(drop=True)是为了删除原有的离散索引,生成从0开始的连续新索引,和你给出的预期输出格式对齐,不需要连续索引可以去掉这部分代码。
内容的提问来源于stack exchange,提问作者Alex AM
相关产品推荐
相关产品推荐

