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

将嵌套JSON数组转为Pandas DataFrame求助:提取title与dpoin值

解决嵌套JSON转Pandas DataFrame的问题

嘿,我完全懂这种嵌套JSON搞不定的挫败感!别担心,咱们一步步来把你需要的title和dpoin里的坐标值都提取出来,转成清晰的DataFrame。

步骤1:导入必要的库

首先得把Pandas和JSON模块(用来处理数据)导入进来:

import pandas as pd
import json

步骤2:准备你的JSON数据

把你提供的JSON数据赋值给一个变量,方便后续处理:

# 你的原始JSON数据
json_data = [{"ID":"rtbg345h","DataRow ID":"dgdfg45654","Labeled Data":"https://abc.png","Label":{"objects":[{"featureId":"rtbg345h","schemaId":"rtbg345h","title":"iris","value":"flower","color":"#00RGAA","dpoin":{"top":82,"left":33,"height":52,"width":675},"instanceURI":"https://sdfdsf.ab"}],"classifications":[]},"Created By":"user","Project Name":"myfirstproject","Created At":"2018-02-02","Updated At":"2018-02-02","Seconds to Label":24.264,"External ID":"sds.jpg","Agreement":-1,"Benchmark Agreement":-1,"Benchmark ID":None,"Dataset Name":"mine","Reviews":[],"View Label":"https:fdrtdf"}]

步骤3:用json_normalize展开嵌套结构

Pandas的json_normalize函数专门用来处理这种嵌套JSON,能自动把数组和字典展开成DataFrame的行和列:

# 展开Label里的objects数组,同时提取dpoin的嵌套字段
df = pd.json_normalize(
    json_data,
    record_path=['Label', 'objects'],  # 指定要展开的数组路径
    sep='_'  # 用下划线分隔嵌套字段的名称,比如dpoin.top变成dpoin_top
)

步骤4:筛选你需要的列

现在DataFrame里会包含很多字段,咱们只保留你需要的title和dpoin相关的四个值:

# 提取目标列
result_df = df[['title', 'dpoin_top', 'dpoin_left', 'dpoin_height', 'dpoin_width']]

# 查看结果
print(result_df)

最终输出结果

运行上面的代码后,你会得到这样的DataFrame:

title  dpoin_top  dpoin_left  dpoin_height  dpoin_width
0   iris         82          33            52          675

如果你的JSON里有多个objects元素,这个方法也能自动把每个元素转成DataFrame的一行,完全适配批量数据的情况。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 16:52:41