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

如何将含多属性的JSON数据转换为指定格式的Pandas DataFrame

解决嵌套JSON转指定格式Pandas DataFrame的问题

直接将原始嵌套JSON传入pd.DataFrame()会保留嵌套结构,要得到目标格式,需要先提取并重组数据:

实现代码

import pandas as pd

# 你的原始JSON数据
data = [
    {
        "attribute_id": "a1",
        "attribute_name": "Profailkir Idkir",
        "elements":[
             {
                "formValues": ["0000a634940"],
                "id": "0000a634940"
            },
            {
                "formValues": ["0000c84724"],
                "id": "0000c84724"
            }]
     },
     {
        "attribute_id": "a2",
        "attribute_name": "Profailkir Nama",
        "elements":[
             {
                "formValues": ["'AFIFAH BINTI KHAIRUL JUBRI"],
                "id": "'AFIFAH BINTI KHAIRUL JUBRI"
            },
            {
                "formValues": ["'AINUN JARIAH BINTI HASHIM"],
                "id": "'AINUN JARIAH BINTI HASHIM"
            }]
     }
]

# 重组数据为DataFrame所需的字典结构
df_dict = {}
for attr in data:
    # 用attribute_name作为列名
    col_name = attr["attribute_name"]
    # 提取每个element里formValues的第一个值(案例中均为单元素列表)
    df_dict[col_name] = [elem["formValues"][0] for elem in attr["elements"]]

# 生成目标DataFrame
df = pd.DataFrame(df_dict)
print(df)

代码说明

  1. 遍历原始JSON中的每个属性项,以attribute_name作为DataFrame的列名
  2. 对每个属性的elements列表,提取每个元素的formValues第一个值(案例里每个formValues都是仅含一个元素的列表),组成该列的所有行数据
  3. 将重组后的字典传入pd.DataFrame(),即可得到你需要的扁平化表格格式

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 19:01:10