如何将 JSON 对象展平为 Pandas Dataframe 对象 [重复]
Posted
技术标签:
【中文标题】如何将 JSON 对象展平为 Pandas Dataframe 对象 [重复]【英文标题】:How to flatten JSON object to pandas Dataframe object [duplicate] 【发布时间】: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
【问题讨论】:
你的json格式有效吗? 这能回答你的问题吗? How to unnest (explode) a column in a pandas 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,我现在升级它干杯以上是关于如何将 JSON 对象展平为 Pandas Dataframe 对象 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
将嵌套的 dict 列表展平为 Pandas Dataframe
Pandas json_normalize 不会展平所有嵌套字段
如何将 Pandas DataFrame 中的字典列表展平为几列?