Python 重塑Dataframe:将唯一列值作为列名

Python 重塑Dataframe:将唯一列值作为列名,python,pandas,data-manipulation,Python,Pandas,Data Manipulation,我有一个数据框,表示一对多标记关系,列名为“user_id”和“tags”。一个用户标识可以与许多标记关联,但我想重新安排数据帧,以便每行只有一个用户标识,每个标记值都是它自己的列 i、 e.我有: User_id, Tags 1, Dresses, 1, Accessories, 2, Dresses, 2, Hats, 并且想要: User_id, Dresses, Accessories, Hats, 1, 1, 1, 0,

我有一个数据框,表示一对多标记关系,列名为“user_id”和“tags”。一个用户标识可以与许多标记关联,但我想重新安排数据帧,以便每行只有一个用户标识,每个标记值都是它自己的列

i、 e.我有:

User_id, Tags

1, Dresses,    
1, Accessories,
2, Dresses,
2, Hats,
并且想要:

User_id, Dresses, Accessories, Hats,    
1,        1,         1,         0,
2,        1,          0,         1,


您可以使用
get_dummies
groupby

df =pd.DataFrame({'user_id':[1,1,2,2],'tags':['Dresses','Accessories','Dresses','Hats']})
pd.get_dummies(df).groupby('user_id').max()
返回:

       tags_Accessories     tags_Dresses    tags_Hats
user_id             
1       1                   1                0
2       0                   1                1

看一看熊猫的轴心()
       tags_Accessories     tags_Dresses    tags_Hats
user_id             
1       1                   1                0
2       0                   1                1