pandas.Index.set_names#

Индекс.set_names(names, *, уровень=None, inplace=False)[источник]#

Установить имя Index или MultiIndex.

Возможность частично устанавливать новые имена и по уровням.

Параметры:
namesметка или список меток или dict-подобный объект для MultiIndex

Имя(имена) для установки.

Изменено в версии 1.3.0.

уровеньint, метка или список int или меток, опционально

Если индекс является MultiIndex, а names не является словарем, уровень(и) для установки (None для всех уровней). В противном случае level должен быть None.

Изменено в версии 1.3.0.

inplacebool, по умолчанию False

Изменяет объект напрямую, вместо создания нового Index или MultiIndex.

Возвращает:
Index или None

Тот же тип, что у вызывающего объекта, или None, если inplace=True.

Смотрите также

Index.rename

Возможность установить новые имена без уровня.

Примеры

>>> 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'])

При переименовании уровней с помощью словаря, уровни не могут быть переданы.

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