pandas.Series.str.rpartition#

Series.str.rpartition(sep=' ', expand=True)[源代码]#

在最后一次出现时拆分字符串 sep

的最后一次出现时拆分字符串。 sep ,并返回包含分隔符之前的部分、分隔符本身和分隔符之后的部分的3个元素。如果找不到分隔符,则返回包含两个空字符串的3个元素,后跟字符串本身。

参数
sep字符串,默认空格

要拆分的字符串。

expand布尔值,默认为True

如果为True,则返回DataFrame/MultiIndex扩展维度。如果为False,则返回Series/Index。

退货
对象的数据帧/多索引或序列/索引

参见

partition

在第一次出现时拆分字符串 sep

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

要返回包含元组而不是DataFrame的Series,请执行以下操作:

>>> 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')

这将创建一个多索引:

>>> idx.str.partition()
MultiIndex([('X', ' ', '123'),
            ('Y', ' ', '999')],
           )

或带有元组的索引 expand=False

>>> idx.str.partition(expand=False)
Index([('X', ' ', '123'), ('Y', ' ', '999')], dtype='object')