Open In App

Python | Pandas Series.transform()

Pandas series is a One-dimensional ndarray with axis labels. The labels need not be unique but must be a hashable type. The object supports both integer- and label-based indexing and provides a host of methods for performing operations involving the index.

Pandas Series.transform() function Call func (the passed function) on self producing a Series with transformed values and that has the same axis length as self.



Syntax: Series.transform(func, axis=0, *args, **kwargs)

Parameter :
func : If a function, must either work when passed a Series or when passed to Series.apply
axis : Parameter needed for compatibility with DataFrame.
*args : Positional arguments to pass to func.
**kwargs : Keyword arguments to pass to func.



Returns : Returns series that must have the same length as self.

Example #1: Use Series.transform() function to transform the elements of the given Series object. Append ‘_City’ at the end of each city name.




# importing pandas as pd
import pandas as pd
  
# Creating the Series
sr = pd.Series(['New York', 'Chicago', 'Toronto', 'Lisbon', 'Rio', 'Moscow'])
  
# Create the Datetime Index
didx = pd.DatetimeIndex(start ='2014-08-01 10:00', freq ='W'
                     periods = 6, tz = 'Europe/Berlin'
  
# set the index
sr.index = didx
  
# Print the series
print(sr)

Output :

Now we will use Series.transform() function to append ‘_City’ at the end of each city name.




# append '_City'
sr.transform(lambda x : x + '_City')

Output :


As we can see in the output, the Series.transform() function has successfully appended the desired keyword at the end of which city name.
 
Example #2: Use Dataframe.transform() function to transform the data of the given Dataframe. Increase the ticket cost of each even by 1000.




# importing pandas as pd
import pandas as pd
  
# Creating the Dataframe
df = pd.DataFrame({'Date':['10/2/2011', '11/2/2011', '12/2/2011', '13/2/2011'],
                    'Event':['Music', 'Poetry', 'Theatre', 'Comedy'],
                    'Cost':[10000, 5000, 15000, 2000]})
  
# Print the dataframe
print(df)

Output :

Now we will use Dataframe.transform() function to increase the ticket cost by 1000




# transform the 'Cost' column
df['Cost'] = df['Cost'].transform(lambda x : x + 1000)
  
# Print the dataframe after modification
print(df)

Output :

As we can see in the output, the Dataframe.transform() function has successfully increased the ticket cost of each event by 1000.


Article Tags :