xorbits.pandas.Index.set_names#

Index.set_names(names, level=None, inplace=False)#

Set Index or MultiIndex name.

Able to set new names partially and by level.

参数
  • names (label or list of label or dict-like for MultiIndex) –

    Name(s) to set.

    在 1.3.0(pandas) 版更改.

  • level (int, label or list of int or label, optional) –

    If the index is a MultiIndex and names is not dict-like, level(s) to set (None for all levels). Otherwise level must be None.

    在 1.3.0(pandas) 版更改.

  • inplace (bool, default False) – Modifies the object directly, instead of creating a new Index or MultiIndex.

返回

The same type as the caller or None if inplace=True.

返回类型

Index or None

参见

Index.rename

Able to set new names without level.

实际案例

>>> idx = pd.Index([1, 2, 3, 4])  
>>> idx  
Index([1, 2, 3, 4], dtype='int64')
>>> idx.set_names('quarter')  
Index([1, 2, 3, 4], dtype='int64', name='quarter')
>>> idx = pd.MultiIndex.from_product([['python', 'cobra'],  
...                                   [2018, 2019]])
>>> idx  
MultiIndex([('python', 2018),
            ('python', 2019),
            ( 'cobra', 2018),
            ( 'cobra', 2019)],
           )
>>> idx = idx.set_names(['kind', 'year'])  
>>> idx.set_names('species', level=0)  
MultiIndex([('python', 2018),
            ('python', 2019),
            ( 'cobra', 2018),
            ( 'cobra', 2019)],
           names=['species', 'year'])

When renaming levels with a dict, levels can not be passed.

>>> idx.set_names({'kind': 'snake'})  
MultiIndex([('python', 2018),
            ('python', 2019),
            ( 'cobra', 2018),
            ( 'cobra', 2019)],
           names=['snake', 'year'])

This docstring was copied from pandas.core.indexes.base.Index.