pandas.Index.rename#
- Index.rename(name, inplace=False)[source]#
- Alter Index or MultiIndex name. - Able to set new names without level. Defaults to returning new index. Length of names must match number of levels in MultiIndex. - Parameters
- namelabel or list of labels
- Name(s) to set. 
- inplacebool, default False
- Modifies the object directly, instead of creating a new Index or MultiIndex. 
 
- Returns
- Index or None
- The same type as the caller or None if - inplace=True.
 
 - See also - Index.set_names
- Able to set new names partially and by level. 
 - Examples - >>> idx = pd.Index(['A', 'C', 'A', 'B'], name='score') >>> idx.rename('grade') Index(['A', 'C', 'A', 'B'], dtype='object', name='grade') - >>> idx = pd.MultiIndex.from_product([['python', 'cobra'], ... [2018, 2019]], ... names=['kind', 'year']) >>> idx MultiIndex([('python', 2018), ('python', 2019), ( 'cobra', 2018), ( 'cobra', 2019)], names=['kind', 'year']) >>> idx.rename(['species', 'year']) MultiIndex([('python', 2018), ('python', 2019), ( 'cobra', 2018), ( 'cobra', 2019)], names=['species', 'year']) >>> idx.rename('species') Traceback (most recent call last): TypeError: Must pass list-like as `names`.