首页 > 解决方案 > 将嵌套列从json文件读入pandas df python

问题描述

我需要将 JSON 文件读入 pandas df。JSON 数据如下所示:

{"f0_":{"id":"138307057680","ActionName":"Complete","Time":"2020-04-23-12:40:04"}}
{"f0_":{"id":"138313115245","ActionName":"Midpoint","Time":"2020-06-16-20:41:16"}}

我需要摆脱包含所有列的第一个键。我试过了:

import json 
import pandas as pd 
from pandas.io.json import json_normalize

data_pd = pd.read_json('db/my_file.json', lines=True) 
new_data = json_normalize(data_pd)

错误消息是:AttributeError: 'str' object has no attribute 'values' 所需的输出是:

id                ActionName       Time 
138307057680       Complete       2020-04-23-12:40:04
138313115245       Midpoint       2020-06-16-20:41:16

目前,如果我打印出来data_pd,输出是: 在此处输入图像描述

标签: pythonjsonpandasnested

解决方案


您可以尝试:

new_data = pd.DataFrame(data_pd['f0_'].values.tolist())

输出:

             id ActionName                 Time
0  138307057680   Complete  2020-04-23-12:40:04
1  138313115245   Midpoint  2020-06-16-20:41:16

推荐阅读