pandas.Index.reindex#
- Index.reindex(target, method=None, level=None, limit=None, tolerance=None)[source]#
Create index with target’s values.
- Parameters
- targetan iterable
- 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.
- levelint, optional
Level of multiindex.
- limitint, optional
Maximum number of consecutive labels in
target
to match for inexact matches.- toleranceint or float, 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_indexpd.Index
Resulting index.
- indexernp.ndarray[np.intp] or None
Indices of output values in original index.
- Raises
- TypeError
If
method
passed along withlevel
.- ValueError
If non-unique multi-index
- ValueError
If non-unique index and
method
orlimit
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='object') >>> idx.reindex(['car', 'bike']) (Index(['car', 'bike'], dtype='object'), array([0, 1]))