@@ -5636,9 +5636,9 @@ def reset_index(
5636
5636
If the columns have multiple levels, determines how the other
5637
5637
levels are named. If None then the index name is repeated.
5638
5638
names : str, tuple or list, default None
5639
- Using the given string, rename the DataFrame column which contains the index data.
5640
- If the DataFrame has a MultiIndex, this has to be a list or tuple with length
5641
- equal to the number of levels.
5639
+ Using the given string, rename the DataFrame column which contains the
5640
+ index data. If the DataFrame has a MultiIndex, this has to be a list or
5641
+ tuple with length equal to the number of levels.
5642
5642
5643
5643
.. versionadded:: 1.4.0
5644
5644
@@ -5783,37 +5783,13 @@ class max type
5783
5783
if len (level ) < self .index .nlevels :
5784
5784
new_index = self .index .droplevel (level )
5785
5785
5786
- if names is not None :
5787
- if isinstance (self .index , MultiIndex ):
5788
- if not isinstance (names , (tuple , list )):
5789
- raise ValueError ("Names must be a tuple or list" )
5790
- else :
5791
- if not isinstance (names , str ):
5792
- raise ValueError ("Names must be a string" )
5793
-
5794
5786
if not drop :
5795
5787
to_insert : Iterable [tuple [Any , Any | None ]]
5796
5788
if isinstance (self .index , MultiIndex ):
5797
- if not names :
5798
- names = [
5799
- (n if n is not None else f"level_{ i } " )
5800
- for i , n in enumerate (self .index .names )
5801
- ]
5802
- else :
5803
-
5804
- if len (names ) != self .index .nlevels :
5805
- raise ValueError (
5806
- f"The number of provided names "
5807
- f"({ len (names )} ) does not match the number of"
5808
- f" MultiIndex levels ({ self .index .nlevels } )"
5809
- )
5789
+ names = self .index .get_default_index_names (names )
5810
5790
to_insert = zip (self .index .levels , self .index .codes )
5811
5791
else :
5812
- default = "index" if "index" not in self else "level_0"
5813
- if not names :
5814
- names = [default ] if self .index .name is None else [self .index .name ]
5815
- else :
5816
- names = [names ]
5792
+ names = self .index .get_default_index_names (self , names )
5817
5793
to_insert = ((self .index , None ),)
5818
5794
5819
5795
multi_col = isinstance (self .columns , MultiIndex )
0 commit comments