Python Pandas Series.clip_lower()
Python是一种进行数据分析的伟大语言,主要是因为以数据为中心的Python软件包的奇妙生态系统。Pandas就是这些包中的一个,它使导入和分析数据变得更加容易。
Pandas Series.clip_lower()用于剪切低于传递的最小值的数值。一个阈值作为参数被传递,系列中所有小于阈值的值都会变成等于它。
语法: Series.clip_lower(threshold, axis=None, inplace=False)
参数:
threshold:数字或类似列表,设置最小阈值,如果是列表,则为调用者系列中的每个值设置单独的阈值(鉴于列表大小相同)。
axis: 0或’索引’用于按行应用方法,1或’列’用于按列应用方法
inplace:对调用者系列本身进行修改。( 用新值覆盖 )
返回类型:具有更新值的系列
在下面的例子中,所使用的数据框包含一些NBA球员的数据。下面是数据框在任何操作之前的图像。
例子 #1 :应用于具有单一数值的系列
在这个例子中,一个最小的阈值26被作为参数传递给.clip_lower()方法。这个方法在数据框架的Age列上被调用,新的值被存储在Age_new列中。在做任何操作之前,使用.dropna()删除空行。
# importing pandas module
import pandas as pd
# making data frame
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/nba.csv")
# removing null values to avoid errors
data.dropna(inplace = True)
# setting threshold value
threshold = 26.0
# applying method and passing to new column
data["Age_new"]= data["Age"].clip_lower(threshold)
# display
data
输出:
如输出图片所示,Age_new列的最小值为26。所有小于26的值都被增加到26并存储在新的列中。
例子#2:应用于具有列表类型值的系列中
在这个例子中,使用.head()方法提取并存储年龄列的前10行。之后,创建一个相同长度的列表,并传递给.clip_lower()方法的阈值参数,为系列中的每个值设置单独的阈值。返回的值被存储在一个新的列’clipped_values’中。
# importing pandas module
import pandas as pd
# importing regex module
import re
# making data frame
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/nba.csv")
# removing null values to avoid errors
data.dropna(inplace = True)
# returning top rows
new_data = data.head(10).copy()
# list for separate threshold values
threshold =[27, 23, 19, 30, 26, 22, 22, 41, 11, 33]
# applying method and returning to new column
new_data["Clipped values"]= new_data["Age"].clip_lower(threshold = threshold)
# display
new_data
输出:
如输出图像所示,根据传递的列表,串联的每个值都有不同的阈值,因此,结果是根据每个元素的单独阈值返回的。