将嵌套字典转换为附加的数据框

时间:2018-11-18 21:55:59

标签: python pandas dictionary dataframe

我有这样的字典

{1:{'name':'john', 'age':26,'salary':50000},11:{'name':'peter', 'age':34, 'salary':70000},14:{'name': 'david', 'age': 21, 'salary': 15000}}

我想将其转换为这样的数据框:

name  age  salary
john  26   50000
peter 34   70000
david 21   15000

4 个答案:

答案 0 :(得分:2)

您可以将字典直接加载到数据框中,然后将其转置:

fill parent

答案 1 :(得分:2)

from_dictorient='index'一起使用:

pd.DataFrame.from_dict(d, orient='index')

     name  age  salary
1    john   26   50000
11  peter   34   70000
14  david   21   15000

答案 2 :(得分:1)

根据字典的值构造数据框。

pd.DataFrame(d.values())

使用重新排列的列:

>>> d = {1:{'name':'john', 'age':26,'salary':50000},11:{'name':'peter', 'age':34, 'salary':70000},14:{'name': 'david', 'age': 21, 'salary': 15000}}
>>> pd.DataFrame(list(d.values()))
   age   name  salary
0   26   john   50000
1   34  peter   70000
2   21  david   15000

答案 3 :(得分:0)

执行以下操作:

“100/m”

如果您使用的是Python2,则可以像这样直接用pd.DataFrame(list(d.values())) 调用pd.DataFrame:

p.values()

这是因为字典值不再在python3中返回列表