从数据框创建字典,以索引为键
df.to_dict()
这个命令会生成一个嵌套的字典,字典的键是表头,格式是 {列名:{行号:值}}
。
有没有简单的方法可以创建一个字典,让行号作为键,格式变成 {行号:列名:值}
?或者甚至是 {行号:(列名,值)}
?
我可以先创建这个字典,然后再把它反转过来,但我在想,是否可以一步到位完成这个操作。
1 个回答
6
在使用 df.to_dict
之前,先把数据表(dataframe)转置一下。
df = pd.DataFrame({'a': [1, 3, 5], 'b': [2, 7, 5]})
print(df)
# a b
# 0 1 2
# 1 3 7
# 2 5 5
print(df.transpose().to_dict())
# {0: {'a': 1, 'b': 2},
# 1: {'a': 3, 'b': 7},
# 2: {'a': 5, 'b': 5}}