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


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


Python是進行數據分析的一種出色語言,主要是因為以數據為中心的Python軟件包具有奇妙的生態係統。 Pandas是其中的一種,使導入和分析數據更加容易。

Pandas str.partition()的工作方式類似str.split()。它不會在每次出現分隔符/定界符時都拆分字符串,而是拆分字符串僅在第一次出現時。在split函數中,分隔符不存儲在任何地方,隻有周圍的文本存儲在新的列表/ DataFrame 中。但是在str.partition() 方法中,分隔符也被存儲。

每次都必須在.str前麵加上前綴,才能調用此方法以區別於Python的默認函數,否則,它將引發錯誤。


用法:Series.str.partition(pat=’ ‘, expand=True)

參數:

pat:字符串值,分隔符或定界符,用於分隔字符串。默認值為“”(空格)
expand:布爾值,如果為True,則在不同的列中返回具有不同值的 DataFrame 。否則,它返回帶有字符串列表的係列。默認值為True。

返回類型:列表或 DataFrame 的係列取決於展開參數

要下載代碼中使用的CSV,請點擊此處。

在以下示例中,使用的 DataFrame 包含一些員工的數據。下麵是任何操作之前的數據幀圖像。


範例1:將字符串拆分為列表

在此示例中,“名稱”列在第一次出現“,”時被拆分。 expand參數保留為False,以將其擴展為列表而不是 DataFrame 。

# importing pandas module 
import pandas as pd 
  
# making data frame 
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/chicago.csv") 
  
# removing null values if any to avoid errors 
data.dropna(how ='all', inplace = True) 
  
# displaying top 5 rows of data 
data.head() 
  
# splitting at ', ' into list 
data["Name"]= data["Name"].str.partition(", ", False) 
  
# display 
data

輸出:
如輸出圖像所示,“名稱”列在首次出現“,”時被拆分為列表。可以看出,“,”也存儲為list的單獨元素。

注意:不要混淆列表中的兩個逗號,一個是元素,另一個是元素分隔符。



範例2:將字符串拆分為 DataFrame

在此示例中,名字和姓氏與“名稱”列分開,並存儲在 DataFrame 中的單獨列中。

# importing pandas module 
import pandas as pd 
  
# making data frame 
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/chicago.csv") 
  
# removing null values if any to avoid errors 
data.dropna(how ='all', inplace = True) 
  
# displaying top 5 rows of data 
data.head() 
  
# splitting at ', ' into Data frame 
new = data["Name"].str.partition(", ", True) 
  
# making seperate first name column from new data frame 
data["First Name"]= new[2] 
   
# making seperate last name column from new data frame 
data["Last Name"]= new[0] 
   
# Dropping old Name columns 
data.drop(columns =["Name"], inplace = True) 
   
# df display 
data

輸出:
如輸出圖像中所示,“名稱”列被分為一個具有3列的數據幀(逗號前為字符串,逗號後為字符串)。之後,該 DataFrame 用於在同一 DataFrame 中創建新列。使用.drop()方法刪除了“舊名稱”列。

新 DataFrame


具有添加列的 DataFrame -



相關用法


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