numpy.
clip
裁剪(限制)数组中的值。
给定一个间隔,该间隔之外的值将被剪裁到间隔边缘。例如,如果 [0, 1] 指定时,小于0的值变为0,大于1的值变为1。
[0, 1]
相当于但比 np.minimum(a_max, np.maximum(a, a_min)) .
np.minimum(a_max, np.maximum(a, a_min))
不进行检查以确保 a_min < a_max .
a_min < a_max
包含要剪辑的元素的数组。
最小值和最大值。如果 None ,则不会在相应的边上执行剪裁。只有一个 a_min 和 a_max 可能是 None . 两者都是针对 a .
None
结果将放置在此数组中。它可能是用于就地剪切的输入数组。 out 必须具有正确的形状才能保存输出。它的类型被保留。
有关其他仅限关键字的参数,请参见 ufunc docs .
1.17.0 新版功能.
包含以下元素的数组 a ,但值在哪里< a_min 替换为 a_min 和那些> a_max 具有 a_max .
参见
实例
>>> a = np.arange(10) >>> np.clip(a, 1, 8) array([1, 1, 2, 3, 4, 5, 6, 7, 8, 8]) >>> a array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> np.clip(a, 3, 6, out=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])