熊猫中的一列到多个

时间:2018-05-29 19:52:45

标签: python python-3.x pandas dataframe

如何使用python将一列转换为数据集中的多列?例如,

user_id   info_name    score
1         a            50%
1         b            75% 
1         c            100%

目标是将"info_name"列切换为多列,以使"user_id"不重复3次,并且有关给定用户的信息全部在一行中,如下所示:

 user_id   a     b      c  
 1         50%   75%    100%

1 个答案:

答案 0 :(得分:1)

一种方法是使用pd.pivot_table

res = df.pivot_table(index='user_id', columns='info_name',
                     values='score', aggfunc='first')\
        .rename_axis('', axis=1).reset_index()

print(res)

   user_id    a    b     c
0        1  50%  75%  100%