Метод explode() для DataFrame в Pandas

Beginner

Введение

Метод explode() в библиотеке Python Pandas используется для преобразования каждого элемента списка в строку. Он дублирует значения индекса и возвращает DataFrame с развернутыми списками в виде строк подмножества столбцов. Он принимает параметр столбца, который задает столбец для развертывания, и необязательный параметр ignore_index, который определяет, должен ли результирующий индекс быть помечен.

Советы по работе с ВМ

После завершения запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook не загрузится полностью. Валидация операций не может быть автоматизирована из-за ограничений в Jupyter Notebook.

Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.

Импортировать необходимые библиотеки

Для использования метода explode() нам необходимо импортировать библиотеку pandas.

import pandas as pd

Создать DataFrame

Создайте DataFrame с колонкой, элементами которой являются списки.

df = pd.DataFrame({'A': [[1, 3], [3]], 'B': 1})

Развернуть DataFrame

Используем метод explode(), чтобы раскрыть DataFrame по определенному столбцу. В этом примере мы раскроем DataFrame по столбцу 'A'.

exploded_df = df.explode('A')

Распечатать развернутый DataFrame

Выводим раскрытый DataFrame, чтобы увидеть результат.

print(exploded_df)

Резюме

В этом практическом занятии мы узнали, как использовать метод explode() в библиотеке Python Pandas для преобразования каждого элемента объекта, похожего на список, в строку в DataFrame. Задав столбец для раскрытия, мы можем продублировать значения индекса и сгенерировать DataFrame с раскрытыми списками в качестве строк подмножества столбцов. Этот метод полезен для работы с данными, хранящимися в вложенных списках, или для выполнения операций над отдельными элементами в списке.