pandas.Index.set_names#

Index.set_names(names, level=None, inplace=False)[源代码]#

设置索引或多索引名称。

能够部分和按级别设置新名称。

参数
names多索引的标签或类似词典的标签或列表

要设置的名称。

在 1.3.0 版更改.

levelInt、标签或int或标签列表,可选

如果索引是多索引,并且名称不是类似字典的,则要设置的级别(所有级别均为无)。否则,级别必须为None。

在 1.3.0 版更改.

inplace布尔值,默认为False

直接修改对象,而不是创建新的索引或多重索引。

退货
索引或无

与调用方相同的类型,如果 inplace=True

参见

Index.rename

可以在没有关卡的情况下设置新名称。

示例

>>> idx = pd.Index([1, 2, 3, 4])
>>> idx
Int64Index([1, 2, 3, 4], dtype='int64')
>>> idx.set_names('quarter')
Int64Index([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.set_names(['kind', 'year'], inplace=True)
>>> idx
MultiIndex([('python', 2018),
            ('python', 2019),
            ( 'cobra', 2018),
            ( 'cobra', 2019)],
           names=['kind', 'year'])
>>> idx.set_names('species', level=0)
MultiIndex([('python', 2018),
            ('python', 2019),
            ( 'cobra', 2018),
            ( 'cobra', 2019)],
           names=['species', 'year'])

当使用词典重命名关卡时,关卡不能通过。

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