将Pandas列转换为Dict,列标题为键,列值为值

时间:2018-01-12 08:09:10

标签: python pandas

所以,例如我有这个数据帧:

ColA    ColB
AD      AC
BD      BC
CD      CC
DD      CD

我怎样才能将我的df转换成这样的字典变量?

mydfDict = {'ColA' : ['AD','BD','CD','DD'] , 
            'ColB' : ['AC','BC','CC','CD'] 
           }

1 个答案:

答案 0 :(得分:1)

applyjoin一起使用,然后Series.to_dict

d = df.apply(','.join).to_dict()
print (d)
{'ColA': 'AD,BD,CD,DD', 'ColB': 'AC,BC,CC,CD'}

详情:

print (df.apply(','.join))
ColA    AD,BD,CD,DD
ColB    AC,BC,CC,CD
dtype: object

但是如果希望list使用DataFrame.to_dict

print (df.to_dict(orient='list'))
{'ColA': ['AD', 'BD', 'CD', 'DD'], 'ColB': ['AC', 'BC', 'CC', 'CD']}