Как использовать функцию взрыва () Pandas (с примерами)


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

Эта функция использует следующий базовый синтаксис:

df.explode('variable_to_explode')

В следующем примере показано, как использовать этот синтаксис на практике.

Пример: используйте функцию взрыва() с Pandas DataFrame

Предположим, у нас есть следующие Pandas DataFrame:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': [['A', 'B', 'C'], ['D', 'E', 'F'], ['G', 'H', 'I']],
 'position ':['Guard', 'Forward', 'Center'],
 'points': [7, 14, 19]})

#view DataFrame
df

 team position points
0 [A, B, C] Guard 7
1 [D, E, F] Forward 14
2 [G, H, I] Center 19

Обратите внимание, что столбец team содержит списки названий команд.

Мы можем использовать функцию взрыва() , чтобы взорвать каждый элемент в каждом списке в строку:

#explode team column
df.explode('team')

 team position points
0 A Guard 7
0 B Guard 7
0 C Guard 7
1 D Forward 14
1 E Forward 14
1 F Forward 14
2 G Center 19
2 H Center 19
2 I Center 19

Обратите внимание, что столбец team больше не содержит списков. Мы «взорвали» каждый элемент каждого списка в строку.

Также обратите внимание, что некоторые строки теперь имеют одинаковое значение индекса.

Мы можем использовать функцию reset_index() для сброса индекса при развертывании столбца команды:

#explode team column and reset index of resulting dataFrame
df.explode('team'). reset_index(drop= True )

 team position points
0 A Guard 7
1 B Guard 7
2 C Guard 7
3 D Forward 14
4 E Forward 14
5 F Forward 14
6 G Center 19
7 H Center 19
8 I Center 19

Обратите внимание, что каждая строка теперь имеет уникальное значение индекса.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:

Как разделить столбец строки в Pandas на несколько столбцов
Как разделить Pandas DataFrame на несколько фреймов данных
Как разделить Pandas DataFrame по значению столбца

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.