# pandas.Index.get_loc

`Index.``get_loc`(key, method=None, tolerance=None)

  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 : int or float, 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`.

  > 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)

Scroll To Top