Spec-Zone.ru › pandas 0.24

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API