pandas.Index.searchsorted
-
Index.searchsorted(self, value, side='left', sorter=None)[source] -
Нахождение индексов для вставки элементов, сохраняя порядок.
Нахождение индексов в отсортированном Индексе
selfтаким образом, чтобы, если соответствующие элементы вvalueбыли вставлены перед этими индексами, порядокselfсохранялся.Параметры: -
value : array_like -
Значения для вставки в
self. -
side : {‘left’, ‘right’}, optional -
Если ‘left’, возвращает индекс первой подходящей позиции. Если ‘right’, возвращает последний подходящий индекс. Если подходящего индекса нет, возвращает либо 0, либо N (где N — длина
self). -
sorter : 1-D array_like, optional -
Необязательный массив целочисленных индексов, сортирующих
selfв порядке возрастания. Обычно они являются результатомnp.argsort.
Возвращает: - int или массив int
-
Скаляр или массив точек вставки с той же формой, что и
value.Изменено в версии 0.24.0: Если
valueявляется скаляром, всегда возвращается int. Ранее для скалярных входных данных возвращался массив из одного элемента дляSeriesиCategorical.
См. также
Примечания
Используется бинарный поиск для нахождения необходимых точек вставки.
Примеры
>>> x = pd.Series([1, 2, 3]) >>> x 0 1 1 2 2 3 dtype: int64
>>> x.searchsorted(4) 3
>>> x.searchsorted([0, 4]) array([0, 3])
>>> x.searchsorted([1, 3], side='left') array([0, 2])
>>> x.searchsorted([1, 3], side='right') array([1, 3])
>>> x = pd.Categorical(['apple', 'bread', 'bread', 'cheese', 'milk'], ordered=True) [apple, bread, bread, cheese, milk] Categories (4, object): [apple < bread < cheese < milk]>>> x.searchsorted('bread') 1>>> x.searchsorted(['bread'], side='right') array([3])
-
© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.25.0/reference/api/pandas.Index.searchsorted.html