Python | Pandas Series.str.rpartition()

Python is a great language for doing data analysis, primarily because of the fantastic ecosystem of data-centric Python packages. Pandas is one of those packages and makes importing and analyzing data much easier.

Pandas str.rpartition() works in a similar way like str.partition() and str.split(). Instead of splitting string on every occurrence from left side, .rpartition() splits string only once and that too reversely (From right side). Unlike .split() method, the rpartition() method stores the separator/delimiter too.

.str has to be prefixed every time before calling this method to differentiate it from the Python’s default function otherwise, it will throw an error.



Note: This method is different from the str.partition() method, Instead of spliiting at the first occurrence, the string is splitted at the last occurrence of separator/delimiter.

Syntax: Series.str.rpartition(pat=’ ‘, expand=True)

Parameters:
pat: String value, separator or delimiter to separate string at. Default is ‘ ‘ (whitespace)
expand: Boolean value, returns a data frame with different value in different columns if True. Else it returns a series with list of strings. Default is True.

Return type: Series of list or Data frame depending on expand Parameter

To download the CSV used in code, click here.

In the following examples, the data frame used contains data on some NBA players. The image of data frame before any operations is attached below.

 
Example #1: Splitting string into list

In this example, the Team column is splitted into list on last occurrence of ‘o’. Before doing any operations, null rows are removed using .dropna() method to avoid errors.

filter_none

edit
close

play_arrow

link
brightness_4
code

# importing pandas module 
import pandas as pd 
    
# making data frame 
    
# removing null values to avoid errors 
data.dropna(inplace = True
  
# splitting and overwriting column
data["Team"]= data["Team"].str.rpartition("o", False)
  
# display
data

chevron_right


Output:
As shown in the output image, the string ‘Boston Celtics’ was separated on last occurrence of ‘o’. Also the returned list is having separator too.

 

Example #2: Splitting string into data frame

In this example, the Name column is splitted into data frame on last occurrence (First from right side) of ‘a’ by keeping expand Parameter True. Before doing any operations, null rows are removed using .dropna() method to avoid errors.

filter_none

edit
close

play_arrow

link
brightness_4
code

# importing pandas module 
import pandas as pd 
    
# making data frame 
    
# removing null values to avoid errors 
data.dropna(inplace = True
  
# splitting and overwriting column
df = data["Name"].str.rpartition("a", True)
  
# display
df

chevron_right


Output:
As shown in the output image, the string was splitted into data frame on the last occurrence of ‘a’ in string.

Note: If there is no occurrence of separator in string, the whole string is stored in the last column of data frame/last index of list.



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.