NumPy参考 >例行程序 >Mathematical functions > numpy.clip
numpy.
clip
(a,a_min,a_max,out = None,** kwargs )[源代码] ¶裁剪(限制)数组中的值。
给定一个间隔,该间隔之外的值将被裁剪到间隔边缘。例如,如果
指定间隔为,则小于0的值将变为0,而大于1的值将变为1。[0, 1]
相当于但比更快。不执行检查以确保。np.maximum(a_min, np.minimum(a, a_max))
a_min < a_max
包含要裁剪的元素的数组。
最小值。如果为“无”,则不会在较低的间隔边缘执行剪切。a_min和a_max中最多一个可以为None。
最大值。如果为无,则不会在间隔的上限边缘执行剪切。a_min和a_max中最多一个可以为None。如果a_min或a_max是array_like,则将广播这三个数组以匹配其形状。
结果将放置在此数组中。它可能是就地剪切的输入数组。 输出必须具有正确的形状以容纳输出。其类型被保留。
有关其他仅关键字的参数,请参见 ufunc docs。
1.17.0版中的新功能。
用的元素的数组一个,但是其中值< a_min与替换a_min,以及那些> a_max 与a_max。
也可以看看
ufuncs-output-type
例子
>>> 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])