Метод explode
Метод explode применяется к Series,
содержащей списки или подобные итерируемые объекты,
и преобразует каждый элемент списка в отдельную строку.
В результате получается Series с развернутыми значениями,
где индексы повторяются для элементов одного списка.
Метод принимает параметр ignore_index,
который позволяет сбросить индекс после разворачивания.
Синтаксис
ser.explode([ignore_index])
Пример
Создадим Series со списками и развернем их:
import pandas as pd
ser = pd.Series([[1, 2], [3, 4], [5]])
res = ser.explode()
print(res)
Результат выполнения кода:
0 1
0 2
1 3
1 4
2 5
dtype: int64
Пример
Используем параметр ignore_index для сброса индекса:
import pandas as pd
ser = pd.Series([[1, 2], [3, 4], [5]])
res = ser.explode(ignore_index=True)
print(res)
Результат выполнения кода:
0 1
1 2
2 3
3 4
4 5
dtype: int64
Пример
Развернем Series со строками и списками разных типов:
import pandas as pd
ser = pd.Series([['a', 'b'], ['c'], ['d', 'e', 'f']])
res = ser.explode()
print(res)
Результат выполнения кода:
0 a
0 b
1 c
2 d
2 e
2 f
dtype: object
Пример
Обработаем Series с пропущенными значениями:
import pandas as pd
ser = pd.Series([[1, 2], None, [3, 4]])
res = ser.explode()
print(res)
Результат выполнения кода:
0 1.0
0 2.0
1 NaN
2 3.0
2 4.0
dtype: float64
Смотрите также
-
метод
repeat,
который повторяет элементы Series -
метод
to_list,
который преобразует Series в список Python -
метод
drop_duplicates,
который удаляет дубликаты из Series -
метод
unique,
который возвращает уникальные значения