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