定义语法
DataFrame.clip(lower=None, upper=None, axis=None, inplace=False, *args, **kwargs)
功能
在输入阈值处修剪值。
将边界外的值指定给边界值。阈值可以是奇异值或数组,并且在后一种情况下,剪切在指定轴中以元素方式执行。
参数说明
lower : float或array_like,默认为None
最小阈值。低于此阈值的所有值都将设置为它。
upper : float或array_like,默认为None
最大阈值。高于此阈值的所有值都将设置为它。
axis : int或string轴名称,可选
沿给定轴将对象与下部和上部对齐。
inplace : 布尔值,默认为False
是否对数据执行操作。
版本0.21.0中的新功能。
*args,** kwargs
其他关键字没有效果,但可以接受与numpy的兼容性。
返回值
Series或DataFrame
与调用对象相同的类型,替换了剪辑边界之外的值
范例
data = {'col_0': [9, -3, 0, -1, 5], 'col_1': [-2, -7, 6, 8, -5]}
df = pd.DataFrame(data)
df
col_0 col_1
0 9 -2
1 -3 -7
2 0 6
3 -1 8
4 5 -5
使用下限阈值和上限阈值的每列剪辑:
df.clip(-4, 6)
col_0 col_1
0 6 -2
1 -3 -4
2 0 6
3 -1 6
4 5 -4
使用每个列元素的特定下限和上限阈值的剪辑:
t = pd.Series([2, -4, -1, 6, 3])
t
0 2
1 -4
2 -1
3 6
4 3
dtype: int64
df.clip(t, t + 4, axis=0)
col_0 col_1
0 6 2
1 -3 -4
2 0 3
3 6 8
4 5 3