我尝试从数据框列创建列表,然后从中创建字典。但是,由于有多个键(dataframe.index,dataframe.somecolumn),我无法产生所需的输出。
我尝试过:
sample df:
index sender
0 Julia
0 Alfred
0 Nana
1 Kaja
1 Lunox
1 December
dict(zip(df.index, df.sender))
但它仅保留发件人列上的第一个值。
desired output:
{0: [Julia, Alfred, Nana], 1: [Kaja, Lunox, December]}
答案 0 :(得分:1)
如评论中所述,字典不能有重复的keys
。一种方法可能是groupby
index
,与list
构造函数聚合并使用.to_dict()
方法:
df.groupby('index').sender.apply(list).to_dict()
# {0: ['Julia', 'Alfred', 'Nana'], 1: ['Kaja', 'Lunox', 'December']}