def reindex_indexer(self, new_axis, indexer, axis, fill_value=None,<EOL>allow_dups=False, copy=True):
if indexer is None:<EOL><INDENT>if new_axis is self.axes[axis] and not copy:<EOL><INDENT>return self<EOL><DEDENT>result = self.copy(deep=copy)<EOL>result.axes = list(self.axes)<EOL>result.axes[axis] = new_axis<EOL>return result<EOL><DEDENT>self._consolidate_inplace()<EOL>if not allow_dups:<EOL><INDENT>self.axes[axis]._can_reindex(indexer)<EOL><DEDENT>if axis >= self.ndim:<EOL><INDENT>raise IndexError("<STR_LIT>")<EOL><DEDENT>if axis == <NUM_LIT:0>:<EOL><INDENT>new_blocks = self._slice_take_blocks_ax0(indexer,<EOL>fill_tuple=(fill_value,))<EOL><DEDENT>else:<EOL><INDENT>new_blocks = [blk.take_nd(indexer, axis=axis, fill_tuple=(<EOL>fill_value if fill_value is not None else blk.fill_value,))<EOL>for blk in self.blocks]<EOL><DEDENT>new_axes = list(self.axes)<EOL>new_axes[axis] = new_axis<EOL>return self.__class__(new_blocks, new_axes)<EOL>
Parameters
----------
new_axis : Index
indexer : ndarray of int64 or None
axis : int
fill_value : object
allow_dups : bool

pandas-indexer with -1's only.