Сжать групповые строки, создав несколько столбцов - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть такой фрейм данных

df = pd.DataFrame({'Team A':['LU','LU','IU','IU','MS','MS'],'Team B':['IU','MU','LU','MS','IU','LU'],'score':[150,160,180,130,155,103]})

Что я хочу сделать, так это сжать строки, чтобы каждая строка имела уникальное значение путем создания нескольких столбцов. Что я хочу сделать, это создать фрейм данных, как это

pd.DataFrame({'Team A':['LU','IU','MS'],'Team B':[150,180,155],'Team C':[160,130,103]})

1 Ответ

2 голосов
/ 20 апреля 2020

Попробуйте:

df[['Team A', 'score']].set_index(['Team A', df.groupby('Team A').cumcount()])['score']\
                       .unstack().reset_index()

Вывод:

  Team A    0    1
0     IU  180  130
1     LU  150  160
2     MS  155  103
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...