On this page
numpy.searchsorted
numpy.searchsorted(a, v, side='left', sorter=None)[source]- 
    
Find indices where elements should be inserted to maintain order.
Find the indices into a sorted array
asuch that, if the corresponding elements invwere inserted before the indices, the order ofawould be preserved.Assuming that
ais sorted:sidereturned index isatisfiesleft a[i-1] < v <= a[i]right a[i-1] <= v < a[i]Parameters: - 
           
a : 1-D array_like - 
           
Input array. If
sorteris None, then it must be sorted in ascending order, otherwisesortermust be an array of indices that sort it. - 
           
v : array_like - 
           
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 either 0 or N (where N is the length of
a). - 
           
sorter : 1-D array_like, optional - 
           
Optional array of integer indices that sort array a into ascending order. They are typically the result of argsort.
New in version 1.7.0.
 
Returns: - 
           
indices : array of ints - 
           
Array of insertion points with the same shape as
v. 
Notes
Binary search is used to find the required insertion points.
As of NumPy 1.4.0
searchsortedworks with real/complex arrays containingnanvalues. The enhanced sort order is documented insort.This function is a faster version of the builtin python
bisect.bisect_left(side='left') andbisect.bisect_right(side='right') functions, which is also vectorized in thevargument.Examples
>>> np.searchsorted([1,2,3,4,5], 3) 2 >>> np.searchsorted([1,2,3,4,5], 3, side='right') 3 >>> np.searchsorted([1,2,3,4,5], [-10, 10, 2, 3]) array([0, 5, 1, 2]) - 
           
 
© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
 https://docs.scipy.org/doc/numpy-1.16.1/reference/generated/numpy.searchsorted.html