pandas.Series.str.partition
-
Series.str.partition(self, sep=' ', expand=True)[source] -
Разделить строку по первому вхождению разделителя.
Этот метод разделяет строку по первому вхождению разделителя и возвращает 3 элемента: часть строки перед разделителем, сам разделитель и часть строки после разделителя. Если разделитель не найден, возвращает 3 элемента: исходная строка, две пустые строки.
Параметры: -
sep : str, default whitespace -
Строка, по которой происходит разделение.
-
pat : str, default whitespace -
Устарело начиная с версии 0.24.0: Используйте
sepвместо этого -
expand : bool, default True -
Если True, возвращает DataFrame/MultiIndex, увеличивая размерность. Если False, возвращает Series/Index.
Возвращаемое значение: - DataFrame/MultiIndex или Series/Index объектов
См. также
-
rpartition - Разделить строку по последнему вхождению разделителя.
-
Series.str.split - Разделение строк по заданным разделителям.
-
str.partition - Стандартная версия из библиотеки.
Примеры
>>> s = pd.Series(['Linda van der Berg', 'George Pitt-Rivers']) >>> s 0 Linda van der Berg 1 George Pitt-Rivers dtype: object
>>> s.str.partition() 0 1 2 0 Linda van der Berg 1 George Pitt-RiversДля разделения по последнему пробелу, а не первому:
>>> s.str.rpartition() 0 1 2 0 Linda van der Berg 1 George Pitt-RiversДля разделения по символам, отличным от пробела:
>>> s.str.partition('-') 0 1 2 0 Linda van der Berg 1 George Pitt - RiversДля возврата Series, содержащих кортежи, вместо DataFrame:
>>> s.str.partition('-', expand=False) 0 (Linda van der Berg, , ) 1 (George Pitt, -, Rivers) dtype: objectТакже доступно для индексов:
>>> idx = pd.Index(['X 123', 'Y 999']) >>> idx Index(['X 123', 'Y 999'], dtype='object')
Что создаст MultiIndex:
>>> idx.str.partition() MultiIndex([('X', ' ', '123'), ('Y', ' ', '999')], dtype='object')Или индекс с кортежами с
expand=False:>>> idx.str.partition(expand=False) Index([('X', ' ', '123'), ('Y', ' ', '999')], dtype='object') -
© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.25.0/reference/api/pandas.Series.str.partition.html