根据数据框的列创建字典

时间:2019-03-15 11:30:14

标签: python python-3.x pandas dictionary

我的数据框的格式为:

pandas as pd
df = pd.DataFrame({'col1': [1,2,3,4,5,6], 
                   'col2': ['A','A','B','C','D','D']}, 
                   index=['row1', 'row2','row3', 'row4','row5', 'row6'])

我想根据数据框df的值创建以下字典:

dict = {'A':[1,2], 'B':[3], 'C':[4], 'D':[5,6]}

1 个答案:

答案 0 :(得分:3)

GroupBy.apply将每组col1的值转换为列表,然后调用Series.to_dict

d = df.groupby('col2')['col1'].apply(list).to_dict()
print (d)
{'A': [1, 2], 'B': [3], 'C': [4], 'D': [5, 6]}