按顺序从json数组加载数据框

用户名

假设我在python中有以下数组:

[
    {'id': [1,2,3]},
    {'name': [4,3,2]},
    {'age': [9,0,1]},
]

我如何将其加载到熊猫数据框中?通常我是pd.DataFrame根据字典来做的,但是对我来说,保持列顺序很重要。

最终数据应如下所示:

id     name       age
1      4          9
2      3          0
3      2          1
pp

您可以构建一个字典,然后输入pd.DataFrame为了确保保留列顺序,请使用collections.OrderedDict

from collections import OrderedDict

L = [{'id': [1,2,3]},
     {'name': [4,3,2]},
     {'age': [9,0,1]}]

df = pd.DataFrame(OrderedDict([(k, v) for d in L for k, v in d.items()]))

print(df)

   id  name  age
0   1     4    9
1   2     3    0
2   3     2    1

使用Python 3.7+字典是按插入顺序排序的,因此您可以使用常规代码dict

df = pd.DataFrame({k: v for d in L for k, v in d.items()})

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章