You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

按marks列阈值条件拆分DataFrame生成及格、不及格两个新DataFrame

实现方法

你可以直接用Pandas的布尔索引实现需求,仅需要一次条件判断就能拆分出两个子DataFrame,操作非常简洁:

完整示例代码

import pandas as pd

# 构造你的原始DataFrame(如果已经有df可以跳过这步)
df = pd.DataFrame({
    'a': [1, 2, 3, 4],
    'b': [2, 3, 6, 5],
    'marks': [25.0, 96.2, 87.0, 32.2]
})

# 定义及格的判断条件
pass_mask = df['marks'] > 70.0
# 筛选及格行
df_pass = df[pass_mask]
# 筛选不及格行(~是按位取反运算符,代表不符合及格条件的行)
df_fail = df[~pass_mask]

可选补充

如果你不需要保留原始DataFrame的行索引,想要新生成的df_pass、df_fail的索引从0开始排序,可以在筛选后加reset_index(drop=True):

df_pass = df[pass_mask].reset_index(drop=True)
df_fail = df[~pass_mask].reset_index(drop=True)

内容的提问来源于stack exchange,提问作者user14784453

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 09:06:08