pandas.Index.get_loc¶
-
Index.
get_loc
(key, method=None, tolerance=None)[source]¶ Get integer location, slice or boolean mask for requested label.
Parameters: - key : label
method : {None, ‘pad’/’ffill’, ‘backfill’/’bfill’, ‘nearest’}, optional
- default: exact matches only.
- pad / ffill: find the PREVIOUS index value if no exact match.
- backfill / bfill: use NEXT index value if no exact match
- nearest: use the NEAREST index value if no exact match. Tied distances are broken by preferring the larger index value.
tolerance : optional
Maximum distance from index value for inexact matches. The value of the index at the matching location most satisfy the equation
abs(index[loc] - key) <= tolerance
.Tolerance may be a scalar value, which applies the same tolerance to all values, or list-like, which applies variable tolerance per element. List-like includes list, tuple, array, Series, and must be the same size as the index and its dtype must exactly match the index’s type.
New in version 0.21.0: (list-like tolerance)
Returns: - loc : int if unique index, slice if monotonic index, else mask
Examples
>>> unique_index = pd.Index(list('abc')) >>> unique_index.get_loc('b') 1
>>> monotonic_index = pd.Index(list('abbc')) >>> monotonic_index.get_loc('b') slice(1, 3, None)
>>> non_monotonic_index = pd.Index(list('abcb')) >>> non_monotonic_index.get_loc('b') array([False, True, False, True], dtype=bool)