当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。