我有一个这样的数据帧
MV id NAME ADDRESS DOC DOCTYPE PHONE
1 100 Mark Home 299 NI {123,456}
2 100 John Work A123 Pass {789,101}
3 100 Club
我想要做的是将具有相同id的列合并到字典中的一个单元格中,如下所示,并从另一列中创建字典中值的键
id NAME ADDRESS DOC PHONE
100 {1:Mark,2:John} {1:'Home',2:'Work',3:'Club'} {NI:'299',Pass:'A123'} {1:{123,456},2:{789,101}}
如您所见,我使用了2列作为键列mv
,在(Name,Address,Phone)
中用作键
我在DOC
中使用了列DOCTYPE
作为关键字,我怎么才能做到这一点呢?我试过了
agg={'id':'first','NAME':dict,'ADDRESS':dict,'PHONE':dict}
df_new=df.groupby(['CUSTOMER_CODE'],as_index=False).aggregate(agg)
return df_new
但它给了我这个输出
id Name Address Phone
100 {0:Mark,1:John} {0:Home,1:Work,2:Club} {0:{123,456},1:{789,101}}