dask.array.clip

dask.array.clip(*args, **kwargs)

Clip (limit) the values in an array.

This docstring was copied from numpy.clip.

Some inconsistencies with the Dask version may exist.

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 (Not supported in Dask)

Array containing elements to clip.

a_minscalar or array_like or None (Not supported in Dask)

Minimum value. If None, clipping is not performed on lower interval edge. Not more than one of a_min and a_max may be None.

a_maxscalar or array_like or None (Not supported in Dask)

Maximum value. If None, clipping is not performed on upper interval edge. Not more than one of a_min and a_max may be None. If a_min or a_max are array_like, then the three arrays will be broadcasted to match their shapes.

outndarray, optional (Not supported in Dask)

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 with a_min, and those > a_max with a_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])