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

如何在Python中对多列pandas数据执行逻辑与操作生成结果列

Pandas 生成Result列:行级逻辑判断(任意Fail则Fail,全Pass则Pass)

假设你的DataFrame名为df,以下是两种简洁的实现方法:

方法一:通过any()检测任意Fail值

import pandas as pd

# 模拟示例数据(替换为你的实际DataFrame)
df = pd.DataFrame({
    'Test1': ['Pass', 'Pass', 'Fail'],
    'Test2': ['Pass', 'Fail', 'Pass'],
    'Test3': ['Pass', 'Pass', 'Pass']
})

# 生成result列
df['result'] = df.apply(lambda row: 'Fail' if (row == 'Fail').any() else 'Pass', axis=1)
  • 逻辑说明:row == 'Fail'将每行单元格转为布尔值(True对应Fail),.any()判断该行是否存在至少一个True,存在则返回Fail,否则返回Pass。

方法二:通过all()验证全Pass

df['result'] = df.apply(lambda row: 'Pass' if (row == 'Pass').all() else 'Fail', axis=1)
  • 逻辑说明:(row == 'Pass').all()判断该行所有单元格是否都是Pass,是则返回Pass,否则返回Fail(即存在至少一个Fail)。

针对指定列的处理

如果DataFrame包含无需参与判断的列,可以指定目标列范围:

# 只对Test1、Test2、Test3列进行判断
target_columns = ['Test1', 'Test2', 'Test3']
df['result'] = df[target_columns].apply(lambda row: 'Fail' if (row == 'Fail').any() else 'Pass', axis=1)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 11:10:57