當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python Pandas Series.transform()用法及代碼示例


Pandas 係列是帶有軸標簽的一維ndarray。標簽不必是唯一的,但必須是可哈希的類型。該對象同時支持基於整數和基於標簽的索引,並提供了許多方法來執行涉及索引的操作。

Pandas Series.transform()函數在self上調用func(傳遞的函數),生成具有轉換後的值的序列,並且該序列具有與self相同的軸長。

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

參數:
func:如果是函數,則必須在傳遞Series或傳遞給Series.apply時起作用
axis:與DataFrame兼容所需的參數。
*參數:位置參數傳遞給func。
** kwargs:傳遞給func的關鍵字參數。

返回:返回必須與自身長度相同的序列。

範例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。



相關用法


注:本文由純淨天空篩選整理自Shubham__Ranjan大神的英文原創作品 Python | Pandas Series.transform()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。