Python | Pandas dataframe.replace()

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 dataframe.replace() function is used to replace a string, regex, list, dictionary, series, number etc. from a dataframe. This is a very rich function as it has many variations.
The most powerful thing about this function is that it can work with Python regex (regular expressions).

Syntax: DataFrame.replace(to_replace=None, value=None, inplace=False, limit=None, regex=False, method=’pad’, axis=None)



Parameters:
to_replace : [str, regex, list, dict, Series, numeric, or None] pattern that we are trying to replace in dataframe.
value : Value to use to fill holes (e.g. 0), alternately a dict of values specifying which value to use for each column (columns not in the dict will not be filled). Regular expressions, strings and lists or dicts of such objects are also allowed.
inplace : If True, in place. Note: this will modify any other views on this object (e.g. a column from a DataFrame). Returns the caller if this is True.
limit : Maximum size gap to forward or backward fill
regex : Whether to interpret to_replace and/or value as regular expressions. If this is True then to_replace must be a string. Otherwise, to_replace must be None because this parameter will be interpreted as a regular expression or a list, dict, or array of regular expressions.
method : Method to use when for replacement, when to_replace is a list.

Returns: filled : NDFrame

For link to CSV file Used in Code, click here

Example #1: Replace team “Boston Celtics” with “Omega Warrior” in the nba.csv file

filter_none

edit
close

play_arrow

link
brightness_4
code

# importing pandas as pd
import pandas as pd
  
# Making data frame from the csv file
df = pd.read_csv("nba.csv")
  
# Printing the first 10 rows of the data frame for visualization
df[:10]

chevron_right


Output:

We are going to replace team “Boston Celtics” with “Omega Warrior” in the ‘df’ data frame

filter_none

edit
close

play_arrow

link
brightness_4
code

# this will replace "Boston Celtics" with "Omega Warrior"
df.replace(to_replace ="Boston Celtics",
                 value ="Omega Warrior")

chevron_right


Output:

 

Example #2: Replacing more than one value at a time. Using python list as an argument

We are going to replace team “Boston Celtics” and “Texas” with “Omega Warrior” in the ‘df’ dataframe.

filter_none

edit
close

play_arrow

link
brightness_4
code

# importing pandas as pd
import pandas as pd
  
# Making data frame from the csv file
df = pd.read_csv("nba.csv")
  
# this will replace "Boston Celtics" and "Texas" with "Omega Warrior"
df.replace(to_replace =["Boston Celtics", "Texas"], 
                            value ="Omega Warrior")

chevron_right


Output:

Notice the College column in the first row, “Texas” has been replaced with “Omega Warriors”
 
Example #3: Replace the Nan value in the data frame with -99999 value.

filter_none

edit
close

play_arrow

link
brightness_4
code

# importing pandas as pd
import pandas as pd
  
# Making data frame from the csv file
df = pd.read_csv("nba.csv")
  
# will replace  Nan value in dataframe with value -99999 
df.replace(to_replace = np.nan, value =-99999)

chevron_right


Output:

Notice all the Nan value in the data frame has been replaced by -99999. Though for practical purposes we should be careful with what value we are replacing nan value.



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.