Переименование столбцов в pandas DataFrames
Вступление
Переименование столбцов фрейма данных - обычная практика, особенно когда мы заинтересованы в том, чтобы поделиться некоторыми идеями с другими людьми и командами. Это означает, что мы можем пожелать сделать имена столбцов более значимыми, чтобы читателям было легче соотносить их с конкретными контекстами.
В этой короткой статье мы рассмотрим несколько вариантов, которые у нас есть, когда дело доходит до переименования столбцов фреймов данных pandas. В частности, мы увидим, как переименовать столбцы:
- используя метод
rename()
- путем обновления атрибута
DataFrame.columns
- и используя метод
set_axis()
Во-первых, давайте создадим пример DataFrame, на который будут ссылаться в этом руководстве, чтобы продемонстрировать желаемую функциональность pandas.
import pandas as pddf = pd.DataFrame({ 'colA':[1, 2, 3], 'colB': ['a', 'b', 'c'], })
print(df)
# colA colB # 0 1 a # 1 2 b # 2 3 c
Использование .rename ()
pandas.DataFrame.rename()
можно использовать для изменения имени столбца или индекса.
Изменить метки осей.
Значения функции / dict должны быть уникальными (1 к 1). Ярлыки, не содержащиеся в
dict
/Series
, будут оставлены как есть.
Чтобы переименовать столбцы с помощью метода rename()
, нам необходимо предоставить сопоставление (т.е. словарь), где ключи - это старые имена столбцов, а значения - новые. Кроме того, мы должны указать axis=1
, чтобы обозначить, что мы хотим переименовать столбцы, а не индекс:
df = df.rename({'colA': 'A', 'colB': 'B'}, axis=1)
print(df)
# A B
# 0 1 a
# 1 2 b
# 2 3 c
Обновление атрибута df.columns
pandas DataFrames поставляется с атрибутом pandas.DataFrames.columns
, который является Index
c , содержащим метки столбцов DataFrame.
Мы можем переименовать столбцы DataFrame, переназначив этот конкретный атрибут, как показано ниже:
df.columns = ['column_A', 'column_B'] print(df) # column_A column_B # 0 1 a # 1 2 b # 2 3 c
Использование set_axis ()
Метод pandas.DataFrame.set_axis()
может использоваться для присвоения желаемого индекса либо оси столбца, либо оси индекса. Чтобы переименовать имена столбцов, обязательно укажите axis=1
, как показано ниже:
df = df.set_axis(['AA', 'BB'], axis=1, inplace=False) print(df) # AA BB # 0 1 a # 1 2 b # 2 3 c
Обратите внимание, что во всех примерах, рассмотренных ранее, вы даже можете использовать axis='columns'
вместо axis=1
, чтобы обозначить, что операция должна быть эффективной на уровне столбца. Например,
df = df.rename({'colA': 'A', 'colB': 'B'}, axis='columns')
df = df.set_axis(['AA', 'BB'], axis='columns')
Последние мысли
В сегодняшнем кратком руководстве мы обсудили, как переименовать столбцы pandas DataFrames несколькими способами.
Вам также может быть интересно понять, как изменить типы данных определенных столбцов pandas DataFrames.
Кроме того, в статье ниже обсуждается, как правильно выбрать строку в зависимости от конкретных условий.