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

是否可以使用pandas字典实现DataFrame映射新增列?具体如何操作?

问题解答

是否可以通过pandas字典实现

完全可以,这是pandas场景下分类值映射的最常用实现方案之一。

具体操作步骤

  • 步骤1:构造Code到Value的映射字典,仅需要写入有对应关系的键值对即可,无对应关系的Code(如本题中的DZ)后续会自动识别为空值
  • 步骤2:调用pandas Series的map()方法,将构造好的字典传入,直接赋值给新的Value列即可

完整可运行示例代码

import pandas as pd

# 构造仅含Code列的示例DataFrame
df = pd.DataFrame({
    'Code': ['DA', 'DB', 'DC', 'DD', 'DE', 'DF', 'DG', 'DX', 'DY', 'DZ']
})

# 构造映射字典
code_mapping = {
    'DA': 'A', 'DB': 'A', 'DC': 'A',
    'DD': 'B', 'DE': 'B', 'DF': 'B',
    'DG': 'C', 'DX': 'C', 'DY': 'C'
}

# 新增Value列
df['Value'] = df['Code'].map(code_mapping)

# 如果希望空值显示为空字符串而非NaN,可改用以下代码
# df['Value'] = df['Code'].map(code_mapping).fillna('')

结果说明

执行完成后,Code为DA/DB/DC的行Value为A,DD/DE/DF对应B,DG/DX/DY对应C,DZ对应的Value为NaN(或空字符串,取决于是否添加fillna方法),完全匹配需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 06:54:04