【问题标题】:Convert nested dict in pandas dataframe转换熊猫数据框中的嵌套字典
【发布时间】:2019-10-26 13:38:11
【问题描述】:

我有一个具有以下结构的嵌套字典。我正在尝试将其转换为 pandas 数据框,但是在拆分“映射”字典以将其放在单独的列中时遇到问题。

{'16': 
    {'label': 't1', 
    'prefLab': 'name', 
    'altLabel': ['test1', 'test3'], 
    'map': [{'id': '16', 'idMap': {'ciID': 16, 'map3': '033441'}}]
    }, 
 '17': 
  {'label': 't2', 
  'prefLab': 'name2', 
  'broader': ['18'], 
  'altLabel': ['test2'], 
  'map': [{'id': '17', 'idMap': {'ciID': 17, 'map1': 1006558, 'map2': 1144}}]
  }
 }

理想的结果是具有以下结构的数据框。

   label prefLab broader altLab ciID, map1, map2, map3 ... 
16
17 

【问题讨论】:

  • 如果有 2 个测试,你想在 altlabel 中做什么?
  • 您可能(也可能不会)在此处找到有用的 json_normalize(向下滚动到答案底部)。
  • altlabel 可以保持原样
  • @cs95 能否请您进一步提供帮助。我不确定应该设置哪个 record_path?

标签: python pandas dataframe dictionary


【解决方案1】:

试试这个:假设你的 json 格式名称是“数据”,那么

train = pd.DataFrame.from_dict(data, orient='index')

【讨论】:

  • 我已经尝试过了,但是正如我所说的那样,“地图”仍然是数据框中的字典,但我需要它在单独的列中。
猜你喜欢
  • 2021-09-30
  • 2023-03-10
  • 2021-01-19
  • 2017-06-19
  • 2021-02-15
  • 2023-03-23
  • 2018-04-14
  • 1970-01-01
相关资源
最近更新 更多