You need to enable JavaScript to run this app. 如何通过字典映射为Pandas DataFrame添加列层级
优惠活动
大模型
产品
解决方案
定价
更多

如何通过字典映射为Pandas DataFrame添加列层级

实现方法

将原有单层列索引替换为两层MultiIndex即可,上层保留原列名,下层使用字典查询得到的映射值,完全匹配目标结构。

可直接运行的完整代码

import pandas as pd
# 初始化示例数据
df = pd.DataFrame(index=list('abcde'), data={'A': range(5), 'B': range(5)})
my_dict = {"B": "BB","A": "AA","C": "CC"}
# 构建双层列索引并替换原有列
df.columns = pd.MultiIndex.from_arrays(
    [df.columns, [my_dict[col] for col in df.columns]]
)

实际输出

执行代码后生成的DataFrame结构与预期完全一致:

A  B
   AA BB
a  0  0
b  1  1
c  2  2
d  3  3
e  4  4

注意事项

  • 代码仅遍历DataFrame已存在的列,字典中定义但不属于df的键(如示例中的C)不会参与运算,既不会触发KeyError,也不会新增多余列
  • 如果需要调整层级上下顺序,只需调换from_arrays中两个列表的位置即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.23 23:15:04