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

如何将Pandas DataFrame中列内的字典展开为独立列?

Pandas快捷展开字典列为独立列的方法

当然有非常便捷的Pandas操作可以实现这个需求,下面给你两种常用的方案:

方法一:使用apply(pd.Series)

这是最直观的方式,直接将字典列的每个元素转换为Series,自动生成对应列:

import pandas as pd

# 假设你的原始DataFrame名为df
# 展开字典列
expanded_columns = df['column1'].apply(pd.Series)
# 将缺失值(不存在的键)填充为0,并转为整数类型
expanded_columns = expanded_columns.fillna(0).astype(int)
# 合并原索引与展开后的列
result_df = df[[]].join(expanded_columns)

执行后result_df就会是你想要的格式:缺失的键(比如e1-e4的c683)会自动填充为0,索引保持和原DataFrame一致。

方法二:使用json_normalize(大数据量更高效)

如果你的数据集比较大,json_normalize的性能会优于apply(pd.Series),用法也很简单:

from pandas import json_normalize

# 标准化字典列
expanded_columns = json_normalize(df['column1'])
# 填充缺失值并转整数
expanded_columns = expanded_columns.fillna(0).astype(int)
# 对齐原DataFrame的索引
expanded_columns.index = df.index
# 合并得到结果
result_df = df[[]].join(expanded_columns)

两种方法最终都会输出你期望的结构,根据数据规模选择合适的方式即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:14:11