pandas.DataFrame.rename_axis#
-
DataFrame.rename_axis(mapper=
, *, index= , columns= , axis=0, copy=None, inplace=False)[источник]# Установите имя оси для индекса или столбцов.
- Параметры:
- mapperскаляр, список-подобный, опционально
Значение для установки атрибута имени оси.
- индекс, столбцыскаляр, список, словарь или функция, необязательно
Скалярное значение, список, словарь или функции преобразований для применения к значениям этой оси. Обратите внимание, что
columnsпараметр не разрешен, если объект является Series. Этот параметр применяется только для объектов типа DataFrame.Используйте либо
mapperиaxisчтобы указать ось для нацеливания сmapper, илиindexи/илиcolumns.- ось{0 или 'index', 1 или 'columns'}, по умолчанию 0
Ось для переименования. Для Series этот параметр не используется и по умолчанию равен 0.
- copybool, по умолчанию None
Также скопировать исходные данные.
Примечание
The copy ключевое слово изменит поведение в pandas 3.0. Копирование при записи будет включено по умолчанию, что означает, что все методы с copy ключевое слово будет использовать механизм ленивого копирования для отложенного копирования и игнорирования copy ключевое слово. The copy ключевое слово будет удалено в будущей версии pandas.
Вы уже можете получить будущее поведение и улучшения, включив copy on write
pd.options.mode.copy_on_write = True- inplacebool, по умолчанию False
Изменяет объект напрямую, вместо создания нового Series или DataFrame.
- Возвращает:
- Series, DataFrame или None
Тот же тип, что у вызывающего объекта, или None, если
inplace=True.
Смотрите также
Series.renameИзменение меток индекса или имени Series.
DataFrame.renameИзменить метки или имя индекса DataFrame.
Index.renameУстановить новые имена для индекса.
Примечания
DataFrame.rename_axisподдерживает два соглашения вызова(index=index_mapper, columns=columns_mapper, ...)(mapper, axis={'index', 'columns'}, ...)
Первое соглашение о вызове будет изменять только имена индекса и/или имена объекта Index, который является столбцами. В этом случае параметр
copyигнорируется.Второй способ вызова изменит имена соответствующего индекса, если mapper является списком или скаляром. Однако, если mapper похож на словарь или является функцией, будет использоваться устаревшее поведение изменения оси метки.
Мы высоко рекомендуется использовать ключевые аргументы для уточнения вашего намерения.
Примеры
Series
>>> s = pd.Series(["dog", "cat", "monkey"]) >>> s 0 dog 1 cat 2 monkey dtype: object >>> s.rename_axis("animal") animal 0 dog 1 cat 2 monkey dtype: object
DataFrame
>>> df = pd.DataFrame({"num_legs": [4, 4, 2], ... "num_arms": [0, 0, 2]}, ... ["dog", "cat", "monkey"]) >>> df num_legs num_arms dog 4 0 cat 4 0 monkey 2 2 >>> df = df.rename_axis("animal") >>> df num_legs num_arms animal dog 4 0 cat 4 0 monkey 2 2 >>> df = df.rename_axis("limbs", axis="columns") >>> df limbs num_legs num_arms animal dog 4 0 cat 4 0 monkey 2 2
MultiIndex
>>> df.index = pd.MultiIndex.from_product([['mammal'], ... ['dog', 'cat', 'monkey']], ... names=['type', 'name']) >>> df limbs num_legs num_arms type name mammal dog 4 0 cat 4 0 monkey 2 2
>>> df.rename_axis(index={'type': 'class'}) limbs num_legs num_arms class name mammal dog 4 0 cat 4 0 monkey 2 2
>>> df.rename_axis(columns=str.upper) LIMBS num_legs num_arms type name mammal dog 4 0 cat 4 0 monkey 2 2