РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
13 of 687 menu

Метод explode

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

Синтаксис

df.explode(column, ignore_index=False)

Пример

Развернём столбец со списками в отдельные строки:

import pandas as pd df = pd.DataFrame({ 'a': [[1, 2], [3, 4, 5], [6]], 'b': ['x', 'y', 'z'] }) res = df.explode('a') print(res)

Результат выполнения кода:

a b 0 1 x 0 2 x 1 3 y 1 4 y 1 5 y 2 6 z

Пример

Используем параметр ignore_index для переиндексации результата. Развернём столбец и получим новый индекс:

import pandas as pd df = pd.DataFrame({ 'a': [[10, 20], [30, 40, 50]], 'b': ['first', 'second'] }) res = df.explode('a', ignore_index=True) print(res)

Результат выполнения кода:

a b 0 10 first 1 20 first 2 30 second 3 40 second 4 50 second

Пример

Развернём несколько столбцов с разными структурами. Метод применяется последовательно к каждому указанному столбцу:

import pandas as pd df = pd.DataFrame({ 'a': [[1, 2], [3]], 'b': [['x', 'y'], ['z']], 'c': [10, 20] }) res = df.explode(['a', 'b']) print(res)

Результат выполнения кода:

a b c 0 1 x 10 0 2 y 10 1 3 z 20

Смотрите также

  • метод stack,
    который свёртывает столбцы в строки
  • метод unstack,
    который разворачивает строки в столбцы
  • метод melt,
    который преобразует таблицу из широкого в длинный формат
  • метод pivot,
    который создаёт сводную таблицу
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить