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

如何判断DataFrame多列中是否含指定字符串并返回对应值?

解决方案

推荐方法:向量化操作(高效简洁)

用 pandas 的向量化方法直接处理整列数据,比逐行循环效率更高:

import pandas as pd

df = pd.DataFrame({'A': ['Target acc', 'Target acc', 'N'],
                   'B': ['Target acc', 'Target acc', 'N'],
                   'C': ['Target acc', 'N', 'N']})

# 先判断每个单元格是否等于'Target acc',再检查每行是否存在至少一个匹配项,最后映射为指定结果
df['Result'] = df.eq('Target acc').any(axis=1).map({True: 'Yes', False: 'N'})

备选方法:逐行判断(逻辑直观)

如果需要更直白的逐行逻辑,也可以使用apply:

df['Result'] = df.apply(lambda row: 'Yes' if 'Target acc' in row.values else 'N', axis=1)

最终结果

运行代码后,DataFrame 会新增Result列,内容如下:

索引ABCResult
0Target accTarget accTarget accYes
1Target accTarget accNYes
2NNNN

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 13:11:37