numpy.clip
-
numpy.clip(a, a_min, a_max, out=None, **kwargs)
[source] -
Clip (limit) the values in an array.
Given an interval, values outside the interval are clipped to the interval edges. For example, if an interval of
[0, 1]
is specified, values smaller than 0 become 0, and values larger than 1 become 1.Equivalent to but faster than
np.minimum(a_max, np.maximum(a, a_min))
.No check is performed to ensure
a_min < a_max
.- Parameters
-
-
aarray_like
-
Array containing elements to clip.
-
a_minscalar or array_like or None
-
Minimum value. If None, clipping is not performed on lower interval edge. Not more than one of
a_min
anda_max
may be None. -
a_maxscalar or array_like or None
-
Maximum value. If None, clipping is not performed on upper interval edge. Not more than one of
a_min
anda_max
may be None. Ifa_min
ora_max
are array_like, then the three arrays will be broadcasted to match their shapes. -
outndarray, optional
-
The results will be placed in this array. It may be the input array for in-place clipping.
out
must be of the right shape to hold the output. Its type is preserved. - **kwargs
-
For other keyword-only arguments, see the ufunc docs.
New in version 1.17.0.
-
- Returns
-
-
clipped_arrayndarray
-
An array with the elements of
a
, but where values <a_min
are replaced witha_min
, and those >a_max
witha_max
.
-
See also
ufuncs-output-type
Examples
>>> 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])
© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/generated/numpy.clip.html