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

如何检查数据框列值是否存在于另一列并提取对应ID生成新列

解决方案

使用pandas的映射匹配功能即可实现需求,无需手动编写循环遍历逻辑,运行效率更高。

完整代码

import pandas as pd
# 读取csv文件
df = pd.read_csv("你的文件路径.csv")
# 构建Number1到对应ID的映射字典
id_map = df.set_index("Number1")["ID"].to_dict()
# 生成ID2列,匹配不到则填充NO MATCH
df["ID2"] = df["Number2"].map(id_map).fillna("NO MATCH")
# 导出结果到新的csv文件
df.to_csv("输出结果.csv", index=False)

逻辑说明

  • 首先构建全量Number1值到对应ID的映射字典,一次构建即可复用,查询效率远高于逐行循环遍历
  • 使用map方法对Number2列的每个值批量查询映射字典,未匹配到的值会自动返回空值,最后用fillna统一填充为NO MATCH
  • 逻辑完全符合全列匹配规则,不会出现逐行比对的错误
    拿你提供的示例数据运行上述代码,输出结果和你给出的预期完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 17:06:00