将嵌套的JSON转换为pandas数据框

时间:2019-07-15 22:05:01

标签: python json pandas dataframe google-colaboratory

我希望将嵌套的JSON转换为大熊猫的数据框。

我尝试使用json_normalize(),但是它不起作用。我尝试使用this tutorial中所示的方法。鉴于我的json比示例更深入,也许我错误地定义了父节点

with open(json_pathfile) as f:

    data_json = json.load(f)

嵌套的json看起来像这样

{
    "data": {
        "allOpportunityApplication": {
            "data": [
                {
                    "person": {
                        "id": "659642",
                        "opportunity_applications_count": 13,
                        "status": "applied"
                    }
                },
                {
                    "person": {
                        "id": "3620882",
                        "opportunity_applications_count": 4,
                        "status": "applied"
                    }
                },
...

使用时

flat_json = json_normalize(data_json['data'])
flat_json.head(3)

输出是单个单元格。

我希望有一个以idopportunity_applications_countstatus为列的数据框。

1 个答案:

答案 0 :(得分:0)

一种方法是使用要提取的节点的标准路径。就您而言:

flat_json = json_normalize(json_data['data']['allOpportunityApplication']['data'])
flat_json.head(3)