熊猫read_json提供多列而不是行

时间:2018-07-28 08:56:39

标签: python json pandas dataframe

我正在尝试使用read_json将json转换为pandas数据框, 但它总是创建多余的列而不是行

json:

'[{"1981121": {"Summary": "Tasa"}}, {"1981123": {"Summary": "This fox only jumps on the top"}}]'

代码:

pd.read_json(json,orient='index')

结果:

                 0                                              1
1981121  {'Summary': 'Tasa'}                                   NaN
1981123         NaN                {'Summary': 'This fox only jumps on the top'}

我为'orient'arg尝试了不同的值,但还是一样

如何以这种方式获取数据框

               0         
1981121  {'Summary': 'Tasa'}                                           
1981123  {'Summary': 'This fox only jumps on the top'}

1 个答案:

答案 0 :(得分:1)

Pandas希望每条记录都是元组,而不是字典。这是使其工作的一种方法:

items = [next(iter(d.items())) for d in json]
pd.DataFrame.from_items(items, orient='index', columns=['Summary'])

然后您得到:

                                Summary
1981121                            Tasa
1981123  This fox only jumps on the top