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

如何将指定多层嵌套JSON读取为符合多索引要求的Pandas DataFrame

实现JSON转指定结构Pandas DataFrame的方案

实现思路

  • 首先读取JSON文件加载为Python字典
  • 遍历外层的ALPHA、BETA、THETA分类键,将每个条目里的日期、分类标识、成分数值拆分为标准化行记录
  • 汇总所有记录生成DataFrame后设置双重索引,调整索引顺序匹配需求

完整实现代码

import pandas as pd
import json

# 1. 读取本地JSON文件,替换为你自己的文件路径
with open('data.json', 'r', encoding='utf-8') as f:
    raw_data = json.load(f)

# 2. 扁平化处理嵌套结构
records = []
for outer_key, entry_list in raw_data.items():
    for entry in entry_list:
        # 拼接基础字段和成分数值
        row = {
            'date': entry['date'],
            'category': outer_key
        }
        row.update(entry['constituents'])
        records.append(row)

# 3. 生成DataFrame并设置索引
df = pd.DataFrame(records)
# *可选操作:将date转为datetime类型,方便后续时间维度计算,不需要可以删除该行
df['date'] = pd.to_datetime(df['date'])
# 设置第一级索引为date,第二级索引为外层分类键
df = df.set_index(['date', 'category']).sort_index()

输出结果验证

最终生成的DataFrame结构如下,完全符合需求:

BBBEEEBTBYUY
2021-06-22ALPHA011
BETA111
THETA011
2021-08-20THETA011
2021-09-07ALPHA000
BETA111
THETA011

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 23:57:05