numpy.clip #
- 麻木的。剪辑( a , a_min , a_max , out = None , ** kwargs ) [来源] #
剪辑(限制)数组中的值。
给定一个区间,区间之外的值将被剪裁到区间边缘。例如,如果指定间隔 ,则小于 0 的值将变为 0,大于 1 的值将变为 1。
[0, 1]
相当于但比 更快。
np.minimum(a_max, np.maximum(a, a_min))
不执行任何检查来确保。
a_min < a_max
- 参数:
- 类似数组
包含要剪辑的元素的数组。
- a_min、a_max array_like 或 None
最小值和最大值。如果
None
,则不对相应的边进行裁剪。只能是 a_min和a_max之一None
。两者均针对.- 输出ndarray,可选
结果将放置在该数组中。它可能是用于就地剪辑的输入数组。 out必须具有正确的形状才能保存输出。它的类型被保留。
- **夸格
对于其他仅关键字参数,请参阅 ufunc 文档。
1.17.0 版本中的新增功能。
- 返回:
- Clipped_array ndarray
包含a元素的数组,但其中 < a_min 的值替换为a_min,> a_max 的值替换 为a_max。
也可以看看
笔记
当a_min大于a_max时,
clip
返回一个数组,其中所有值都等于a_max,如第二个示例所示。例子
>>> 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])