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

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

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

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

要下载代码中使用的 CSV,请单击此处。
在以下示例中,使用的数据框包含一些 NBA 球员的数据。下面附上任何操作之前的数据帧图像。
示例 #1:替换年龄列中的值 在此示例中,使用 str.replace() 将年龄列中所有值为 25.0 的值替换为“二十五”之后,创建一个过滤器并传入 .where() 方法只显示年龄=“二十五”的行。

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


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


输出:如输出图像所示,Age 列中年龄=25.0 的所有值都已替换为“二十五”。 示例 #2:不区分大小写 在此示例中,球队名称Boston Celtics被替换为New Boston Celtics 。在参数中,不是传递波士顿,而是传递波士顿(小写的'b')并且大小写设置为False,这意味着不区分大小写。之后,仅使用 .where() 方法显示球队名称为“New Boston Celtics”的球队。

Python3

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

输出:如输出图像所示,Boston 被 New Boston 替换,而与传入的参数中的小写字母无关。这是因为 case 参数设置为 False。