dask.array.clip
dask.array.clip¶
- dask.array.clip(*args, **kwargs)¶
剪辑(限制)数组中的值。
此文档字符串是从 numpy.clip 复制的。
Dask 版本可能存在一些不一致性。
给定一个区间,区间外的值会被裁剪到区间边缘。例如,如果指定了一个
[0, 1]
的区间,小于 0 的值变为 0,大于 1 的值变为 1。等效于但比
np.minimum(a_max, np.maximum(a, a_min))
更快。不会执行检查以确保
a_min < a_max
。- 参数
- aarray_like (Dask 中不支持)
包含要裁剪元素的数组。
- a_min, a_max类数组或无
最小值和最大值。如果为
None
,则不会在相应的边缘进行裁剪。如果a_min
和a_max
都为None
,则返回数组的元素保持不变。两者都与a
进行广播。- 出ndarray, 可选 (Dask 不支持)
结果将被放置在这个数组中。它可能是用于原地裁剪的输入数组。out 必须具有正确的形状以容纳输出。其类型保持不变。
- 最小值, 最大值类数组或无
数组API兼容的
a_min
和a_max
参数替代方案。可以同时传递a_min
和a_max
或min
和max
。默认值:None
。2.1.0 新版功能.
- **kwargs
对于其他仅关键字参数,请参阅 ufunc 文档。
1.17.0 新版功能.
- 返回
- clipped_arrayndarray
一个数组,包含 a 的元素,但其中小于 a_min 的值被替换为 a_min,大于 a_max 的值被替换为 a_max。
参见
- ufuncs-输出类型
注释
当 a_min 大于 a_max 时,clip 返回一个数组,其中所有值都等于 a_max,如第二个示例所示。
示例
>>> import numpy as np >>> a = np.arange(10) >>> a array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> np.clip(a, 1, 8) array([1, 1, 2, 3, 4, 5, 6, 7, 8, 8]) >>> np.clip(a, 8, 1) array([1, 1, 1, 1, 1, 1, 1, 1, 1, 1]) >>> np.clip(a, 3, 6, out=a) array([3, 3, 3, 3, 4, 5, 6, 6, 6, 6]) >>> a array([3, 3, 3, 3, 4, 5, 6, 6, 6, 6]) >>> a = np.arange(10) >>> a array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> np.clip(a, [3, 4, 1, 1, 1, 4, 4, 4, 4, 4], 8) array([3, 4, 2, 3, 4, 5, 6, 7, 8, 8])