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.