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

如何从包含嵌套字典的字典列表创建指定列的Pandas DataFrame

解决方案

你遇到的问题根源是数据中的entrant字段为嵌套字典,直接传入pd.DataFrame()只会将entrant作为单列处理,不会自动拆分出嵌套的id、name字段。可使用以下两种方案处理:

方案1:使用pandas.json_normalize(推荐)

该方法是Pandas内置的半结构化数据处理工具,无需手动遍历:

import pandas as pd

# 假设解析后的嵌套字典列表存储在变量raw_data中
df = pd.json_normalize(raw_data)
# 重命名列名符合需求
df = df.rename(columns={"entrant.id": "id", "entrant.name": "name"})
# 调整列顺序为你需要的placement、id、name(可选)
df = df[["placement", "id", "name"]]

方案2:手动遍历展开字典

如果你需要自定义处理逻辑,可先通过列表推导式把所有嵌套字段展开为平级字典:

import pandas as pd

processed_data = [
    {
        "placement": item["placement"],
        "id": item["entrant"]["id"],
        "name": item["entrant"]["name"]
    }
    for item in raw_data
]
df = pd.DataFrame(processed_data)

两种方案生成的DataFrame结构完全一致,均符合你要求的列名和数据结构。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 08:06:03