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

如何将特定嵌套字典转换为指定结构的Pandas DataFrame

问题

我拥有如下字典:

{'data':[{'action_values': [
   {'action_type': 'offsite_conversion', 'value': '5479.8'},
   {'action_type': 'omni_add_to_cart', 'value': '9217.55'},
   {'action_type': 'omni_purchase', 'value': '5479.8'},
   {'action_type': 'add_to_cart', 'value': '9217.55'}]}]}

希望将其转换为Pandas DataFrame,使每个action_type对应DataFrame的一列,value对应列中的行数据,最终结构如下:

offsite_conversion    omni_add_to_cart    omni_purchase   add_to_cart
0   5479.8                9217.55               5479.8        9217.55

请问该如何实现此转换?

解决方案

直接提取目标数据并构造对应字典,再生成DataFrame即可,代码示例:

import pandas as pd

# 原始数据
raw_dict = {'data':[{'action_values': [
   {'action_type': 'offsite_conversion', 'value': '5479.8'},
   {'action_type': 'omni_add_to_cart', 'value': '9217.55'},
   {'action_type': 'omni_purchase', 'value': '5479.8'},
   {'action_type': 'add_to_cart', 'value': '9217.55'}]}]}

# 提取action_values列表,构造列名与对应值的字典
# 若需要将value转为数值类型,用float(item['value'])替代item['value']
df_data = {item['action_type']: [item['value']] for item in raw_dict['data'][0]['action_values']}

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

关键步骤说明

  1. 从原始字典的层级中定位到action_values列表,这是转换的核心数据源;
  2. 使用字典推导式将每个action_type映射为列名,对应的value用列表包裹,确保生成的是单行数据;
  3. 传入字典到pd.DataFrame(),自动生成符合要求的列结构。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 06:40:47