Метод partition
Метод partition применяется к Series строкового типа
и разделяет каждую строку на три части: текст до разделителя,
сам разделитель и текст после разделителя. Метод возвращает
DataFrame с тремя колонками. По умолчанию разделение
происходит по первому найденному разделителю. Если разделитель
не найден, то первая часть содержит исходную строку, вторая и
третья - пустые строки.
Параметр pat - обязательный, задаёт разделитель
в виде строки или регулярного выражения. Параметр expand
управляет форматом возврата: если True (по умолчанию),
возвращается DataFrame, если False - возвращается
Series, состоящая из кортежей.
Синтаксис
ser.str.partition(pat, expand=True)
Пример
Разделим строки по первому вхождению символа подчеркивания:
import pandas as pd
ser = pd.Series(['user_name', 'article_title', 'data_file'])
res = ser.str.partition('_')
print(res)
Результат выполнения кода:
0 1 2
0 user _ name
1 article _ title
2 data _ file
Пример
Разделим строки по пробелу, используя регулярное выражение:
import pandas as pd
ser = pd.Series(['first second', 'one two three', 'simple'])
res = ser.str.partition(pat='\s+')
print(res)
Результат выполнения кода:
0 1 2
0 first second
1 one two three
2 simple
Пример
Разделим строки без расширения результата в DataFrame.
Вместо этого вернём Series кортежей:
import pandas as pd
ser = pd.Series(['user@example.com', 'admin@site.org'])
res = ser.str.partition('@', expand=False)
print(res)
Результат выполнения кода:
0 (user, @, example.com)
1 (admin, @, site.org)
dtype: object
Смотрите также
-
метод
rpartition,
который разделяет по последнему вхождению разделителя -
метод
split,
который разделяет строки на массив частей -
метод
replace,
который заменяет подстроки в строках -
метод
extract,
который извлекает части строк по регулярному выражению