Python 单元格中的多个值-如何重新构造它们
我有这个:Python 单元格中的多个值-如何重新构造它们,python,pandas,dataframe,Python,Pandas,Dataframe,我有这个: ID Fruit Consumer 01 apple, banana, banana user1, user2, user13 02 banana, apple, pineapple user3, user5, user8 03 pear, apple, apple, ba
ID Fruit Consumer
01 apple, banana, banana user1, user2, user13
02 banana, apple, pineapple user3, user5, user8
03 pear, apple, apple, banana user27, user1, user2, user33
我需要它来执行以下步骤:
ID apple banana pineapple pear
01 user1 user2, user13 Nobody Nobody
02 user5 user3 user8 Nobody
03 user1, user2 user33 Nobody user27
我不知道如何将用户映射到水果栏。
有什么想法吗?将ID设置为索引
df=df.set_索引'ID'
然后解析水果和用户列。以水果柱为轴心,用
df=pd.concat[df['Consumer'].str.split',',expand=True.stack,df['Fruit'].str.split',',expand=True.stack],axis=1.renamecolumns={0:'user',1:'Fruit'}.pivot\u tableindex=['ID'],columns=['Fruit'],values='user',aggfunc=lambda x:','.joinx,fill\u value='Nobody'
到底是什么问题?这是一个重构问题您可以将其作为参数添加到pivot\u table函数fill\u value='Nobody'
fruit apple banana pear pineapple
ID
1 user1 user2,user13 Nobody Nobody
2 user5 user3 Nobody user8
3 user1,user2 user33 user27 Nobody