DataFrames в Pandas — незаменимый инструмент для обработки данных в Python. Часто возникает необходимость корректировки названий столбцов для повышения понятности, согласованности или совместимости с другими наборами данных. Pandas предлагает несколько эффективных способов для этого. В этой статье рассматриваются три популярных подхода: использование DataFrame.rename()
, DataFrame.columns
и DataFrame.set_axis()
.
Содержание
- Переименование столбцов с помощью
DataFrame.rename()
- Переименование столбцов с помощью
DataFrame.columns
- Переименование столбцов с помощью
DataFrame.set_axis()
Переименование столбцов с помощью DataFrame.rename()
Метод rename()
обеспечивает максимальную гибкость, позволяя выборочно переименовывать отдельные столбцы или группы столбцов. Он использует словарь, где ключи представляют старые названия столбцов, а значения — новые названия.
import pandas as pd
# Пример DataFrame
data = {'old_col1': [1, 2, 3], 'old_col2': [4, 5, 6], 'old_col3': [7, 8, 9]}
df = pd.DataFrame(data)
print("Исходный DataFrame:n", df)
# Переименование столбцов с помощью DataFrame.rename()
df = df.rename(columns={'old_col1': 'new_col1', 'old_col3': 'new_col3'})
print("nDataFrame после переименования:n", df)
# Переименование на месте с помощью inplace=True
df.rename(columns={'old_col2': 'new_col2'}, inplace=True)
print("nDataFrame после переименования на месте:n", df)
Этот фрагмент кода выборочно переименовывает ‘old_col1’ в ‘new_col1’ и ‘old_col3’ в ‘new_col3’. Аргумент inplace=True
изменяет DataFrame напрямую, исключая необходимость переназначения.
Переименование столбцов с помощью DataFrame.columns
Этот метод предлагает простой подход для одновременного переименования всех столбцов. Он напрямую присваивает новый список названий столбцов атрибуту columns
. Этот метод краток, но ему не хватает гибкости для выборочного переименования.
import pandas as pd
# Пример DataFrame
data = {'old_col1': [1, 2, 3], 'old_col2': [4, 5, 6], 'old_col3': [7, 8, 9]}
df = pd.DataFrame(data)
print("Исходный DataFrame:n", df)
# Переименование столбцов с помощью DataFrame.columns
new_columns = ['new_col1', 'new_col2', 'new_col3']
df.columns = new_columns
print("nDataFrame после переименования:n", df)
Код создает список new_columns
с желаемыми именами и присваивает его df.columns
. Важно, чтобы длина new_columns
точно соответствовала количеству столбцов в DataFrame.
Переименование столбцов с помощью DataFrame.set_axis()
Метод set_axis()
предоставляет альтернативный способ одновременного переименования всех столбцов. Он похож на DataFrame.columns
, но явно указывает ось (1 для столбцов, 0 для строк).
import pandas as pd
# Пример DataFrame
data = {'old_col1': [1, 2, 3], 'old_col2': [4, 5, 6], 'old_col3': [7, 8, 9]}
df = pd.DataFrame(data)
print("Исходный DataFrame:n", df)
# Переименование столбцов с помощью DataFrame.set_axis()
new_columns = ['new_col1', 'new_col2', 'new_col3']
df = df.set_axis(new_columns, axis=1)
print("nDataFrame после переименования:n", df)
В этом примере используется set_axis()
с axis=1
для переименования всех столбцов. Как и DataFrame.columns
, он заменяет все названия столбцов.
В заключение, каждый метод предлагает уникальный подход. DataFrame.rename()
лучше всего подходит для выборочного переименования, в то время как DataFrame.columns
и DataFrame.set_axis()
эффективны для переименования всех столбцов. Выберите метод, который наилучшим образом соответствует вашим конкретным потребностям.