diff --git a/pandas/core/indexes/range.py b/pandas/core/indexes/range.py index 1dc4fc1e91462..e9c4c301f4dca 100644 --- a/pandas/core/indexes/range.py +++ b/pandas/core/indexes/range.py @@ -385,11 +385,13 @@ def _shallow_copy(self, values=None, name: Label = no_default): return Int64Index._simple_new(values, name=name) @doc(Int64Index.copy) - def copy(self, name=None, deep=False, dtype=None, **kwargs): + def copy(self, name=None, deep=False, dtype=None, names=None): self._validate_dtype(dtype) - if name is None: - name = self.name - return self.from_range(self._range, name=name) + + new_index = self._shallow_copy() + names = self._validate_names(name=name, names=names, deep=deep) + new_index = new_index.set_names(names) + return new_index def _minmax(self, meth: str): no_steps = len(self) - 1