如何根据另一个列的值将一列分为多个?

时间:2019-09-06 18:01:05

标签: pandas pyspark pyspark-sql pyspark-dataframes

我需要根据python / pyspark中的另一列值将一列拆分为4。 我尝试根据代码过滤并加入多个df。 有更好的方法吗?

Code   score ID

AAA     12  ABCD
BBB     14  ABCD
CCC     16  ABCD
DDD     67  ABCD
AAA     89  XYZ
BBB     65  XYZ
CCC     19  XYZ
DDD     56  XYZ


ID          score_AAA   score_BBB   score_CCC   score_DDD

ABCD            12          14      16              67
XYZ             89          65      19              56

1 个答案:

答案 0 :(得分:0)

使用pivot

df = df.pivot(index='ID', columns='Code')
df.columns = df.columns.get_level_values(0) + '_' + df.columns.get_level_values(1)

结果:

      score_AAA  score_BBB  score_CCC  score_DDD
ID                                              
ABCD         12         14         16         67
XYZ          89         65         19         56