【问题标题】:How to flatten JSON object to pandas Dataframe object [duplicate]如何将 JSON 对象展平为 Pandas Dataframe 对象 [重复]
【发布时间】:2020-09-05 07:17:45
【问题描述】:

我有一个包含多个项目的列表

result = *json_formatted*
print(result) <-- [{'id: 1', value: array([10,11,12])}, {id: 2, value: array([20,21,22]) }] 

我正在努力将其作为数据框。 我希望我的输出看起来像

id value
1 10
1 11
1 12
2 20
2 21
2 22

【问题讨论】:

标签: python json pandas numpy dataframe


【解决方案1】:

认为这是您的result

In [940]: import numpy as np
In [941]: result = [{'id': 1, 'value': np.array([10,11,12])}, {'id': 2, 'value': np.array([20,21,22]) }] 

您可以使用df.explode:(在pandas 版本> 0.25 中可用,正如@Shijith 指出的那样)

In [952]: import pandas as pd
In [946]: df = pd.DataFrame(result)
In [950]: df = df.explode('value')

In [951]: df
Out[951]: 
   id value
0   1    10
0   1    11
0   1    12
1   2    20
1   2    21
1   2    22

【讨论】:

  • 如果熊猫版本 > 0.25
  • 哦,没错。已更新答案。感谢您指出。
  • 检查您的pandas 版本。
  • 只需print(pd.__version__) 即可查看熊猫版本
  • 我的是0.23.4,我现在升级它干杯
猜你喜欢
  • 2021-06-06
  • 2019-05-25
  • 2019-01-17
  • 2018-01-23
  • 2017-06-13
  • 2021-03-05
  • 2016-12-26
  • 2022-01-11
  • 2021-11-06
相关资源
最近更新 更多