изменить форму кадра данных на основе суффикса с Python - PullRequest
0 голосов
/ 07 мая 2020

Мне нужно «изменить» фрейм данных на основе суффикса столбца X.

X    Y
a_1  12
b_1  20
c_1  30
a_2  2
b_2  56
c_2  70
d_2  2

И получить:

    _1   _2
a   12   2
b   20   56
c   30   70
d   0    2

Заранее большое спасибо

1 Ответ

3 голосов
/ 07 мая 2020

Вот один из подходов с использованием pivot:

(df.X.str.split(r'_', expand=True)
     .assign(y=df.Y.values)
     .pivot(0,1,'y')
     .fillna(0)
     .astype(int))

1   1   2
0        
a  12   2
b  20  56
c  30  70
d   0   2
...