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

如何将字典作为列添加至Pandas DataFrame?

解决方法

嗨,这事儿超简单,直接给你的DataFrame新增一列,把整个字典赋值过去就搞定了!我给你两种实用的实现方式,你看哪种顺手用哪种:

首先先把你的初始数据还原出来,方便测试:

import pandas as pd

# 你的初始DataFrame
df = pd.DataFrame({'A': [1], 'B': ['f']})
# 要添加的字典
target_dict = {'M': [1,2,3]}

方式一:直接赋值(最直观)

直接给DataFrame新增列C,把字典作为值赋值进去就行。因为你的DataFrame只有一行,直接赋值也没问题;如果以后有多行,用[target_dict] * len(df)能保证每一行都拿到这个字典,避免长度不匹配的报错:

df['C'] = [target_dict] * len(df)

执行完之后,你的DataFrame结构就变成你想要的样子了:

ABC
1f{'M': [1, 2, 3]}

方式二:用assign()方法(链式操作友好)

如果你习惯用链式调用写代码,比如后续还要对DataFrame做其他操作,可以用assign()方法来添加新列,这样代码更连贯:

df = df.assign(C=[target_dict] * len(df))

额外小补充

如果你不想让C列是字典类型,想要类似M: [1,2,3]的字符串形式,也可以把字典转成字符串再赋值:

df['C'] = str(target_dict)

这样C列的值就是字符串"{'M': [1, 2, 3]}",完全符合你说的“值为数组的键值对”的要求~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:40:05