Python Help Pandas строка и столбец - PullRequest
0 голосов
/ 21 ноября 2018

Привет, я новичок в python, но у меня есть такой фрейм:

ID  NAME        NAME1      VALUE
1   Sarah       orange     5
1   Roger       apple      3
2   Amy         pineapple  2
2   Kia         pear       8

Я хочу вот так:

ID NAME   NAME1     VALUE  NAME   NAME1  VALUE
1  Sarah  orange     5     Roger  apple   3
2  Amy    pineapple  2     Kia    pear    8

Я пользуюсь пандами, но неуверен, как я могу достичь этого и написать csv.Любая помощь будет высоко ценится!Спасибо!

1 Ответ

0 голосов
/ 21 ноября 2018

Использование set_index с cumcount для MultiIndex, изменение формы на unstack, сортировка MulitIndex по второму уровню на sort_index и в последний раз сгладьте его путем понимания списка с помощью reset_index:

df = df.set_index(['ID',df.groupby('ID').cumcount()]).unstack().sort_index(axis=1, level=1)
#python 3.6+
df.columns = [f'{a}_{b}' for a, b in df.columns]
#python bellow 3.6
#df.columns = ['{}_{}'.format(a,b) for a, b in df.columns]
df = df.reset_index()
print (df)
   ID NAME_0    NAME1_0  VALUE_0 NAME_1 NAME1_1  VALUE_1
0   1  Sarah     orange        5  Roger   apple        3
1   2    Amy  pineapple        2    Kia    pear        8
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...