Python中将两层嵌套字典转换为指定结构Pandas DataFrame的方法咨询
不需要额外工具库,用标准的Pandas和Python原生语法就能实现,具体实现方法如下:
实现思路
- 先手动遍历两层嵌套字典,把每一条二级键值对和对应的一级父键拼接成单行记录
- 将所有记录汇总为列表后直接传入Pandas生成DataFrame即可,不需要调整
from_dict的复杂参数
代码示例
import pandas as pd # 你的原始嵌套字典 raw_dict = { "Emissions": { "305-1": [ "2014_249989", "2015_339998", "2016_617957", "2017_827230" ], "305-2": [ "2014_33163", "2015_64280", "2016_502748", "2017_675091" ], }, "Effluents and Waste": { "306-1": [ "2014_143.29", "2015_277.86", "2016_385.67", "2017_460.6" ], "306-2": "blah blah blah", } } # 生成记录列表 records = [] for parent_key, child_dict in raw_dict.items(): for child_key, child_value in child_dict.items(): records.append({ "Parent Key": parent_key, "Child Key": child_key, "Child Value": child_value }) # 转换为DataFrame df = pd.DataFrame(records)
输出验证
打印df即可得到目标结构,Child Value列会自动保留原始的数据类型,列表类型不会被强行拆分。
内容的提问来源于stack exchange,提问作者StressedBoi69420
相关产品推荐
相关产品推荐

