首页 > 解决方案 > 将字典中的单个条目转换为数据框,其中键是列

问题描述

给定一个字典,例如:

records = {0:{'name':'John', 'salary':'5000'}, 1:{'name':'Bob', 'salary':'3500'}}

如果我想获取和存储(在 csv 中)一个数据框,例如:

name  salary
John   5000

通过使用 records[0] 作为访问内部字典的一种方式,我该怎么做?

我试过了:

df = pd.DataFrame(records[0], index=[0])

df= pd.DataFrame(list(records[0].values()), columns=list(records[0].keys()))

df= pd.DataFrame.from_dict(records[key], orient='columns')

但是它们都没有按预期工作(第二个给了我一个错误,第一个和最后一个只有一列)

标签: pythonpandasdataframedictionary

解决方案


DataFrame.from_dict与 一起使用orient='index'

df = pd.DataFrame.from_dict(records, orient='index')
print (df)
   name salary
0  John   5000
1   Bob   3500

编辑 - 对于record传递给嵌套列表的第一个值:

df = pd.DataFrame([records[0]])
print (df)
   name salary
0  John   5000

推荐阅读