Skip to content

Commit 19645b6

Browse files
committed
Add argument to rename index when resetting it.
1 parent 7178fbb commit 19645b6

File tree

1 file changed

+19
-6
lines changed

1 file changed

+19
-6
lines changed

pandas/core/frame.py

+19-6
Original file line numberDiff line numberDiff line change
@@ -5518,6 +5518,7 @@ def reset_index(
55185518
inplace: Literal[False] = ...,
55195519
col_level: Hashable = ...,
55205520
col_fill: Hashable = ...,
5521+
names: Hashable | Sequence[Hashable] = None,
55215522
) -> DataFrame:
55225523
...
55235524

@@ -5529,6 +5530,7 @@ def reset_index(
55295530
inplace: Literal[True],
55305531
col_level: Hashable = ...,
55315532
col_fill: Hashable = ...,
5533+
names: Hashable | Sequence[Hashable] = None,
55325534
) -> None:
55335535
...
55345536

@@ -5540,6 +5542,7 @@ def reset_index(
55405542
inplace: Literal[True],
55415543
col_level: Hashable = ...,
55425544
col_fill: Hashable = ...,
5545+
names: Hashable | Sequence[Hashable] = None,
55435546
) -> None:
55445547
...
55455548

@@ -5551,6 +5554,7 @@ def reset_index(
55515554
inplace: Literal[True],
55525555
col_level: Hashable = ...,
55535556
col_fill: Hashable = ...,
5557+
names: Hashable | Sequence[Hashable] = None,
55545558
) -> None:
55555559
...
55565560

@@ -5561,6 +5565,7 @@ def reset_index(
55615565
inplace: Literal[True],
55625566
col_level: Hashable = ...,
55635567
col_fill: Hashable = ...,
5568+
names: Hashable | Sequence[Hashable] = None,
55645569
) -> None:
55655570
...
55665571

@@ -5572,6 +5577,7 @@ def reset_index(
55725577
inplace: bool = ...,
55735578
col_level: Hashable = ...,
55745579
col_fill: Hashable = ...,
5580+
names: Hashable | Sequence[Hashable] = None,
55755581
) -> DataFrame | None:
55765582
...
55775583

@@ -5583,7 +5589,8 @@ def reset_index(
55835589
inplace: bool = False,
55845590
col_level: Hashable = 0,
55855591
col_fill: Hashable = "",
5586-
) -> DataFrame | None:
5592+
names: Hashable | Sequence[Hashable] = None,
5593+
) -> Optional[DataFrame]:
55875594
"""
55885595
Reset the index, or a level of it.
55895596
@@ -5743,14 +5750,20 @@ class max type
57435750
if not drop:
57445751
to_insert: Iterable[tuple[Any, Any | None]]
57455752
if isinstance(self.index, MultiIndex):
5746-
names = [
5747-
(n if n is not None else f"level_{i}")
5748-
for i, n in enumerate(self.index.names)
5749-
]
5753+
if not names:
5754+
names = [
5755+
(n if n is not None else f"level_{i}")
5756+
for i, n in enumerate(self.index.names)
5757+
]
5758+
else:
5759+
names = names
57505760
to_insert = zip(self.index.levels, self.index.codes)
57515761
else:
57525762
default = "index" if "index" not in self else "level_0"
5753-
names = [default] if self.index.name is None else [self.index.name]
5763+
if not names:
5764+
names = [default] if self.index.name is None else [self.index.name]
5765+
else:
5766+
names = [names]
57545767
to_insert = ((self.index, None),)
57555768

57565769
multi_col = isinstance(self.columns, MultiIndex)

0 commit comments

Comments
 (0)