假设我们有这个字典
d = {'A':True, 'B':False, 'C':True}
使用此命令,我得到了所需的数据框:
import pandas as pd
df = pd.DataFrame(d.items())
0 1
0 A True
1 B False
2 C True
但是当我想转换回字典时,我得到了:
d_again = df.to_dict('records')
[{0: 'A', 1: True}, {0: 'B', 1: False}, {0: 'C', 1: True}]
与第一个字典d不同。
谢谢您的帮助! :)
答案 0 :(得分:1)
您可以使用数据框的values
属性并将其传递给dict
d_again = dict(df.values)
{'A': True, 'B': False, 'C': True}
答案 1 :(得分:1)
直接翻译为
print(df.set_index(0)[1].to_dict())
哪个产量
{'A': True, 'B': False, 'C': True}
完整代码:
import pandas as pd
dct_in = {'A':True, 'B':False, 'C':True}
df = pd.DataFrame(dct_in.items())
dct_out = df.set_index(0)[1].to_dict()
assert dct_in == dct_out