📜  Python|熊猫 Series.transform()

📅  最后修改于: 2022-05-13 01:55:40.512000             🧑  作者: Mango

Python|熊猫 Series.transform()

Pandas 系列是带有轴标签的一维 ndarray。标签不必是唯一的,但必须是可散列的类型。该对象支持基于整数和基于标签的索引,并提供了许多用于执行涉及索引的操作的方法。

Pandas Series.transform()函数在 self 上调用 func (传递的函数),生成一个具有转换值的 Series,并且与 self 具有相同的轴长度。

示例 #1:使用Series.transform()函数转换给定 Series 对象的元素。在每个城市名称的末尾附加“_City”。

# 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)

输出 :

现在我们将使用Series.transform()函数在每个城市名称的末尾附加“_City”。

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

输出 :


正如我们在输出中看到的那样, Series.transform()函数已成功地将所需的关键字附加到哪个城市名称的末尾。示例 #2:使用Dataframe.transform()函数转换给定 Dataframe 的数据。甚至将每个人的票价增加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)

输出 :

现在我们将使用Dataframe.transform()函数将门票成本增加 1000

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

输出 :

正如我们在输出中看到的, Dataframe.transform()函数成功地将每个事件的门票成本增加了 1000。