python:从dict到df,再回到dict
假设我们有这条命令python:从dict到df,再回到dict,python,dataframe,dictionary,transform,Python,Dataframe,Dictionary,Transform,假设我们有这条命令 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 但当我想转换回dict时,我得到了以下结果: d_again = df.to_dict('records') [{0: 'A', 1: True}, {0: 'B', 1
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
但当我想转换回dict时,我得到了以下结果:
d_again = df.to_dict('records')
[{0: 'A', 1: True}, {0: 'B', 1: False}, {0: 'C', 1: True}]
这和第一条d不一样
谢谢你的帮助!:) 您可以使用数据帧的
值
属性并将其传递给dict
d\u再次=dict(df.值)
直接翻译是
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
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