pandas.Series.str.rsplit
-
Series.str.rsplit(pat=None, n=-1, expand=False)[source] -
Разделение строк по заданному разделителю/делителю.
Разделяет строку в Series/Индексе с конца по заданному разделителю. Эквивалентно
str.rsplit().Параметры: -
pat : str, optional -
Строка или регулярное выражение для разделения. Если не указано, разделение происходит по пробелам.
-
n : int, default -1 (all) -
Ограничение числа разделений в выходных данных.
None, 0 и -1 будут интерпретироваться как возврат всех разделений. -
expand : bool, default False -
Расширить разделенные строки в отдельные столбцы.
- Если
True, возвращается DataFrame/MultiIndex, расширяющий размерность. - Если
False, возвращается Series/Индекс, содержащий списки строк.
- Если
Возвращает: - Series, Index, DataFrame или MultiIndex
-
Тип соответствует вызывающему элементу, если
expand=True(см. Примечания).
См. также
-
Series.str.split - Разделение строк по заданному разделителю/делителю.
-
Series.str.rsplit - Разделяет строку по заданному разделителю/делителю, начиная с правого края.
-
Series.str.join - Объединить списки, содержащиеся в качестве элементов в Series/Индексе, с заданным разделителем.
-
str.split - Стандартная библиотечная версия для split.
-
str.rsplit - Стандартная библиотечная версия для rsplit.
Примечания
Обработка ключевого слова
nзависит от количества найденных разделений:- Если найденных разделений >
n, выполнить только первыеnразделения - Если найденных разделений <=
n, выполнить все разделения - Если для определенной строки количество найденных разделений <
n, добавитьNoneдля заполнения доnеслиexpand=True
Если используется
expand=True, вызывающие элементы Series и Index соответственно возвращают объекты DataFrame и MultiIndex.Примеры
>>> s = pd.Series(["this is a regular sentence", "https://docs.python.org/3/tutorial/index.html", np.nan])
По умолчанию, строка разделяется по пробелам.
>>> s.str.split() 0 [this, is, a, regular, sentence] 1 [https://docs.python.org/3/tutorial/index.html] 2 NaN dtype: object
Без параметра
n, выводыrsplitиsplitидентичны.>>> s.str.rsplit() 0 [this, is, a, regular, sentence] 1 [https://docs.python.org/3/tutorial/index.html] 2 NaN dtype: object
Параметр
nможет использоваться для ограничения числа разделений по разделителю. Выводыsplitиrsplitразличаются.>>> s.str.split(n=2) 0 [this, is, a regular sentence] 1 [https://docs.python.org/3/tutorial/index.html] 2 NaN dtype: object
>>> s.str.rsplit(n=2) 0 [this is a, regular, sentence] 1 [https://docs.python.org/3/tutorial/index.html] 2 NaN dtype: object
Параметр
patможет использоваться для разделения по другим символам.>>> s.str.split(pat = "/") 0 [this is a regular sentence] 1 [https:, , docs.python.org, 3, tutorial, index... 2 NaN dtype: object
При использовании
expand=True, элементы разделения будут расширены в отдельные столбцы. Если присутствует NaN, он распространяется на все столбцы при разделении.>>> s.str.split(expand=True) 0 1 2 3 0 this is a regular 1 https://docs.python.org/3/tutorial/index.html None None None 2 NaN NaN NaN NaN 4 0 sentence 1 None 2 NaNДля немного более сложных случаев, таких как разделение имени html-документа из url, можно использовать комбинацию параметров.
>>> s.str.rsplit("/", n=1, expand=True) 0 1 0 this is a regular sentence None 1 https://docs.python.org/3/tutorial index.html 2 NaN NaN -
© 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.24.2/reference/api/pandas.Series.str.rsplit.html