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

如何基于Multi-Index DataFrame指定列值通过映射字典新增目标列

实现方法

你可以通过pandas自带的map()方法快速实现批量列新增,该方法会自动匹配action列值与映射字典的key,未匹配的项默认返回NaN,替换为空白字符串即可符合预期要求,多索引结构不会对该操作产生影响。

核心代码

import pandas as pd

# 1. 把所有新增列的映射规则统一整理为配置,后续加第三列直接在该字典中追加即可
remap_config = {
    "remap_col1": {
        "A": "Value1",
        "B": "Value2"
    },
    "remap_col2": {
        "A-B": "Value3",
        "B-C": "Value4"
    }
}

# 2. 批量生成映射列
for new_col, map_rule in remap_config.items():
    df[new_col] = df["action"].map(map_rule).fillna("")

逻辑说明

  • Series.map()方法会对action列的每一个值做映射查找,匹配到字典key就返回对应value,未匹配则返回NaN
  • fillna("")会把所有未匹配到的NaN值替换为空白,符合你要求的「其余位置留空」的规则
  • 该方法时间复杂度为O(n),数据量较大时也能保持较高的执行效率

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 06:36:02