数据探索pandas中JSON嵌套数据

2024-06-07 20:59:11 发布

您现在位置:Python中文网/ 问答频道 /正文

如何将JSON数据放入合理的数据帧中?我有一个深度嵌套的文件,我的目标是进入一个大的数据帧。所有内容都在下面的Github存储库中described

http://www.github.com/simongraham/dataExplore.git


Tags: 文件数据gitgithubcomjsonhttp内容
1条回答
网友
1楼 · 发布于 2024-06-07 20:59:11

对于嵌套的json,您将需要遍历各个层,提取所需的片段。对于较大的json的营养部分,考虑在每个nutritionPortions级别和每次运行pandas规范化并连接到最终数据帧时迭代:

import pandas as pd
import json

with open('/Users/simongraham/Desktop/Kaido/Data/kaidoData.json') as f:
    data = json.load(f)

# INITIALIZE DF
nutrition = pd.DataFrame()

# ITERATIVELY CONCATENATE
for item in data[0]["nutritionPortions"]:    
    if 'ftEnergyKcal' in item.keys():      # MISSING IN 3 OF 53 LEVELS
        temp = (pd.io
            .json
            .json_normalize(item, 'nutritionNutrients',
                ['vcNutritionId','vcUserId','vcPortionId','vcPortionName','vcPortionSize',
                 'ftEnergyKcal', 'vcPortionUnit','dtConsumedDate'])
            )
        nutrition = pd.concat([nutrition, temp])

nutrition.head()

输出

^{pr2}$

相关问题 更多 >

    热门问题