具有以下格式的数据框:
element1 | element2 | element3
cat bird plane
dog poodle cloud
pig bike sky
我想将其转换为以下形式的列表的字典
{ 'element1' : ['cat', 'dog', 'pig'],
'element2' : ['bird', 'poodle', 'bike'],
'element3' : ['plane', 'cloud', 'sky'] }
我正在查看.to_dict
方法的documentation,但是似乎没有一个选项可以满足我的需要。
答案 0 :(得分:2)
通常to_dict基于索引元素作为键值,因此转置数据框并逐行应用列表,然后进行字典转换
df.T.apply(list,1).to_dict()
出局:
{'element1': ['cat', 'dog', 'pig'],
'element2': ['bird', 'poodle', 'bike'],
'element3': ['plane', 'cloud', 'sky']}
答案 1 :(得分:2)
将DataFrame.to_dict
与list
参数一起使用:
d = df.to_dict('list')
print (d)
{'element1': ['cat', 'dog', 'pig'],
'element2': ['bird', 'poodle', 'bike'],
'element3': ['plane', 'cloud', 'sky']}