Python | Pandas DataFrame.transform
Last Updated :
21 Feb, 2019
Pandas DataFrame is a two-dimensional size-mutable, potentially heterogeneous tabular data structure with labeled axes (rows and columns). Arithmetic operations align on both row and column labels. It can be thought of as a dict-like container for Series objects. This is the primary data structure of the Pandas.
Pandas
DataFrame.transform()
function call func on self producing a DataFrame with transformed values and that has the same axis length as self.
Syntax: DataFrame.transform(func, axis=0, *args, **kwargs)
Parameter :
func : Function to use for transforming the data
axis : {0 or ‘index’, 1 or ‘columns’}, default 0
*args : Positional arguments to pass to func.
**kwargs : Keyword arguments to pass to func.
Returns : DataFrame
Example #1 : Use
DataFrame.transform()
function to add 10 to each element in the dataframe.
Python3
# importing pandas as pd
import pandas as pd
# Creating the DataFrame
df = pd.DataFrame({"A":[12, 4, 5, None, 1],
"B":[7, 2, 54, 3, None],
"C":[20, 16, 11, 3, 8],
"D":[14, 3, None, 2, 6]})
# Create the index
index_ = ['Row_1', 'Row_2', 'Row_3', 'Row_4', 'Row_5']
# Set the index
df.index = index_
# Print the DataFrame
print(df)
Output :

Now we will use
DataFrame.transform()
function to add 10 to each element of the dataframe.
Python3 1==
# add 10 to each element of the dataframe
result = df.transform(func = lambda x : x + 10)
# Print the result
print(result)
Output :

As we can see in the output, the
DataFrame.transform()
function has successfully added 10 to each element of the given Dataframe.
Example #2 : Use
DataFrame.transform()
function to find the square root and the result of euler's number raised to each element of the dataframe.
Python3
# importing pandas as pd
import pandas as pd
# Creating the DataFrame
df = pd.DataFrame({"A":[12, 4, 5, None, 1],
"B":[7, 2, 54, 3, None],
"C":[20, 16, 11, 3, 8],
"D":[14, 3, None, 2, 6]})
# Create the index
index_ = ['Row_1', 'Row_2', 'Row_3', 'Row_4', 'Row_5']
# Set the index
df.index = index_
# Print the DataFrame
print(df)
Output :

Now we will use
DataFrame.transform()
function to find the square root and the result of euler's number raised to each element of the dataframe.
Python3 1==
# pass a list of functions
result = df.transform(func = ['sqrt', 'exp'])
# Print the result
print(result)
Output :

As we can see in the output, the
DataFrame.transform()
function has successfully performed the desired operation on the given dataframe.
Explore
Python Fundamentals
Python Data Structures
Advanced Python
Data Science with Python
Web Development with Python
Python Practice