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

如何使用map函数多条件匹配并填充DataFrame的空ID字段

解决方法

你可以将lookup预处理为以(Type, Name)元组为键的映射字典,再取待填充行的对应两列组成元组匹配即可,修改后的代码如下:

# 构造双条件匹配的映射字典
lookup_map = {(item["Type"], item["Name"]): item["ID"] for item in lookup}

# 仅对ID为空的行做双条件匹配填充
df.loc[df["ID"].isnull(), "ID"] = df.loc[df["ID"].isnull(), ["Type", "Name"]].apply(tuple, axis=1).map(lookup_map)

运行效果

你提供的样例DataFrame执行代码后结果如下:

IDTypeNameEnabled
70B52DA6-F099-4D01-BBD0-03EA97292C26AGalaxy PuzzleTRUE
442B1598-20CF-4425-8A28-0438FBF77C46BCar ToyTRUE
4EB3D322-7A25-4A67-9053-28955383DD1FBCar ToyFALSE

完全符合仅填充空ID、已有ID不修改的需求。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 03:24:03