Python Pandas Series.str.replace() 替换系列中的文本

Python Pandas Series.str.replace() 替换系列中的文本

Python是一种进行数据分析的伟大语言,主要是因为以数据为中心的Python软件包的奇妙生态系统。Pandas 是其中一个包,它使导入和分析数据变得更加容易。Pandas Series.str.replace()方法的工作原理与Python的.replace()方法类似,但它也适用于Series。在对Pandas系列调用.replace()之前,.str必须有前缀,以便将其与Python的默认替换方法区分开。

语法: Series.str.replace(pat, repl, n=-1, case=None, regex=True)

**参数: **

pat:要替换的字符串或已编译好的regex

repl:要替换pat的字符串或可调用字符串

n:在单个字符串中进行替换的数量,默认为-1,表示全部。

case:取布尔值来决定大小写敏感性。如果是假的,则对大小写不敏感

regex: 布尔值,如果是真,则认为传递的模式是一个regex

返回类型:系列,包括被替换的文本值
在下面的例子中,所使用的数据框包含一些NBA球员的数据。下面附上任何操作之前的数据框的图片。

Python Pandas Series.str.replace() 替换系列中的文本

例子#1:

替换年龄列中的数值 在这个例子中,年龄列中所有数值为25.0的数值被替换为 “25”,使用str.replace()之后,创建一个过滤器,并在.where()方法中传递,只显示年龄=”25 “的行。

# importing pandas module
import pandas as pd
 
# reading csv file from url
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/nba.csv")
 
# overwriting column with replaced value of age
data["Age"]= data["Age"].replace(25.0, "Twenty five")
 
# creating a filter for age column
# where age = "Twenty five"
filter = data["Age"]=="Twenty five"
 
# printing only filtered columns
data.where(filter).dropna()

输出:

如输出图片所示,Age列中所有年龄=25.0的值都被替换为 “25”。

Python Pandas Series.str.replace() 替换系列中的文本

例子#2:

大小写不敏感 在这个例子中,球队名称Boston CelticsNew Boston Celtics取代。在参数中,没有传递波士顿,而是传递波士顿(小写的’b’),并且大小写被设置为False,这意味着大小写不敏感。之后,只有拥有 “新波士顿凯尔特人 “队名的球队才会用.where()方法显示。

# importing pandas module
import pandas as pd
 
# reading csv file from url
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/nba.csv")
 
# overwriting column with replaced value of age
data["Team"]= data["Team"].str.replace("boston", "New Boston", case = False)
 
# creating a filter for age column
# where age = "Twenty five"
filter = data["Team"]=="New Boston Celtics"
 
# printing only filtered columns
data.where(filter).dropna()

输出:

如输出图片所示,无论参数中传递的是什么小写字母,波士顿都被替换成了新波士顿。这是因为case参数被设置为False。

Python Pandas Series.str.replace() 替换系列中的文本

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程