dpnp.searchsorted¶
- dpnp.searchsorted(a, v, side='left', sorter=None)[source]¶
Find indices where elements should be inserted to maintain order.
For full documentation refer to
numpy.searchsorted.- Parameters:
- a{dpnp.ndarray, usm_ndarray}
Input 1-D array. If sorter is
None, then it must be sorted in ascending order, otherwise sorter must be an array of indices that sort it.- v{dpnp.ndarray, usm_ndarray, scalar}
Values to insert into a.
- side{"left", "right"}, optional
If
"left", the index of the first suitable location found is given. If"right", return the last such index. If there is no suitable index, return either0orN(whereNis the length of a).Default:
"left".- sorter{None, dpnp.ndarray, usm_ndarray}, optional
Optional 1-D array of integer indices that sort array a into ascending order. They are typically the result of
dpnp.argsort(). Out of bound index values of sorter array are treated using"wrap"mode documented indpnp.take().Default:
None.
- Returns:
- indicesdpnp.ndarray
Array of insertion points with the same shape as v, or 0-D array if v is a scalar.
See also
dpnp.sortReturn a sorted copy of an array.
dpnp.histogramProduce histogram from 1-D data.
Examples
>>> import dpnp as np >>> a = np.array([11, 12, 13, 14, 15]) >>> np.searchsorted(a, 13) array(2) >>> np.searchsorted(a, 13, side='right') array(3) >>> v = np.array([-10, 20, 12, 13]) >>> np.searchsorted(a, v) array([0, 5, 1, 2])
When sorter is used, the returned indices refer to the sorted array of a and not a itself:
>>> a = np.array([40, 10, 20, 30]) >>> sorter = np.argsort(a) >>> sorter array([1, 2, 3, 0]) # Indices that would sort the array 'a' >>> result = np.searchsorted(a, 25, sorter=sorter) >>> result array(2) >>> a[sorter[result]] array(30) # The element at index 2 of the sorted array is 30