Python|熊猫系列.clip_upper()
Python是一种用于进行数据分析的出色语言,主要是因为以数据为中心的Python包的奇妙生态系统。 Pandas就是其中之一,它使导入和分析数据变得更加容易。
Pandas Series.clip_upper()
用于剪切高于传递的最大值的值。阈值作为参数传递,所有大于阈值的系列值都等于它。
Syntax: Series.clip_upper(threshold, axis=None, inplace=False)
Parameters:
threshold: numeric or list like, Sets maximum threshold value and in case of list, sets separate threshold values for each value in caller series ( Given list size is same)
axis: 0 or ‘index’ to apply method by rows and 1 or ‘columns’ to apply by columns.
inplace: Make changes in the caller series itself. (Overwrite with new values)
Return type: Series with updated values
要下载以下示例中使用的数据集,请单击此处。
在以下示例中,使用的数据框包含一些 NBA 球员的数据。下面附上任何操作之前的数据帧图像。
示例 #1 :应用于具有单值的系列
在此示例中,最大阈值 26 作为参数传递给 .clip_upper() 方法。此方法在数据框的 Age 列上调用,新值存储在 Age_new 列中。在执行任何操作之前,使用 .dropna() 删除空行
Python3
# 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_upper(threshold)
# displaying top 10 rows
data.head(10)
Python3
# 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_upper(threshold = threshold)
# display
new_data
输出:
如输出图像所示,Age_new 列的最大值为 26。超过 26 的所有值都被剪裁并等于 26。
示例 #2:应用于具有列表类型值的系列
在此示例中,使用.head()
方法提取并存储年龄列的前 10 行。之后,创建一个相同长度的列表并将其传递给.clip_upper()
方法的阈值参数,以便为每个系列值设置单独的阈值。返回的值存储在新列“clipped_values”中。
Python3
# 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_upper(threshold = threshold)
# display
new_data
输出:
如输出图像所示,根据传递的列表,串联的每个值都有不同的阈值,因此根据每个元素的单独阈值返回结果。所有超过其各自阈值的值都被削减到阈值。