dask.dataframe.Index.clip

dask.dataframe.Index.clip

Index.clip(lower=None, upper=None, axis=None)

在输入阈值处修剪值。

此文档字符串是从 pandas.core.series.Series.clip 复制的。

Dask 版本可能存在一些不一致性。

将超出边界的值赋值为边界值。阈值可以是单一值或类似数组的形式,在后一种情况下,裁剪是沿着指定的轴逐元素进行的。

参数
下限浮点数或类似数组的对象,默认 None

最小阈值。所有低于此阈值的值都将被设置为该阈值。缺少阈值(例如 NA)将不会裁剪该值。

上部浮点数或类似数组的对象,默认 None

最大阈值。所有高于此阈值的值都将被设置为该阈值。缺少阈值(例如 NA)将不会裁剪该值。

{{0 或 ‘index’, 1 或 ‘columns’, None}}, 默认 None

沿给定轴对齐对象与下限和上限。对于 Series,此参数未使用并默认为 None

就地bool, 默认 False (Dask 中不支持)

是否对数据进行原地操作。

*args, **kwargs

额外的关键词没有效果,但可能为了与numpy兼容而被接受。

返回
序列或数据框或无

与调用对象类型相同,剪切边界外的值被替换,如果 inplace=True 则为 None。

参见

Series.clip

在序列中对输入阈值进行值修剪。

DataFrame.clip

在数据框中修剪输入阈值处的值。

numpy.clip

剪辑(限制)数组中的值。

示例

>>> 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

按列使用特定的下限和上限阈值进行裁剪:

>>> df.clip([-2, -1], [4, 5])  
    col_0  col_1
0      4     -1
1     -2     -1
2      0      5
3     -1      5
4      4     -1

按列元素使用特定的下限和上限进行裁剪:

>>> 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

按列元素使用特定的较低阈值进行剪辑,处理缺失值:

>>> t = pd.Series([2, -4, np.nan, 6, 3])  
>>> t  
0    2.0
1   -4.0
2    NaN
3    6.0
4    3.0
dtype: float64
>>> df.clip(t, axis=0)  
col_0  col_1
0      9      2
1     -3     -4
2      0      6
3      6      8
4      5      3