Skip to main content
`Ctrl`+`K`

# pandas.Index.reindex

Index.reindex(target, method=None, level=None, limit=None, tolerance=None)

  Create index with target’s values.

  Optionally provides an indexer that maps the new labels back to the original positions, and supports filling methods for non-exact matches.

  Parameters:
    target an iterable

      An iterable containing the values to be used for creating the new index.

    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.

    level int, optional

      Level of multiindex.

    limit int, optional

      Maximum number of consecutive labels in `target` to match for inexact matches.

    tolerance int, float, or list-like, optional

      Maximum distance between original and new labels for inexact matches. The values of the index at the matching locations must satisfy the equation `abs(index[indexer] - target) <= 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.

  Returns:
    new_index pd.Index

      Resulting index.

    indexer np.ndarray[np.intp] or None

      Indices of output values in original index.

  Raises:
    TypeError

      If `method` passed along with `level`.

    ValueError

      If non-unique multi-index

    ValueError

      If non-unique index and `method` or `limit` passed.

  See also

  `Series.reindex`

    Conform Series to new index with optional filling logic.

  `DataFrame.reindex`

    Conform DataFrame to new index with optional filling logic.

  Examples

      >>> idx = pd.Index(["car", "bike", "train", "tractor"])
      >>> idx
      Index(['car', 'bike', 'train', 'tractor'], dtype='str')
      >>> idx.reindex(["car", "bike"])
      (Index(['car', 'bike'], dtype='str'), array([0, 1]))