Переименуйте столбцы с помощью al oop in Pandas - PullRequest
2 голосов
/ 09 марта 2020

Мне нужно переименовать все столбцы кадра данных (pandas) с ~ 100 столбцами. Я создал список со всеми новыми именами, и мне нужна удобная функция для их переименования. Многие онлайн-решения имеют дело «вручную» с указанием старого имени столбца, что невозможно при таком размере.

Я пробовал простое для l oop, например:

for i in range(0,96):
    df.columns[i] = new_cols_list[i]

То это способ, которым я бы сделал это в r, но он выдает ошибку:

«Индекс не поддерживает изменяемые операции»

Ответы [ 2 ]

2 голосов
/ 09 марта 2020

Все, что вам нужно сделать, это:

df.columns = new_cols_list

Используйте его только тогда, когда вам нужно переименовать все столбцы. New_col_list - это список, содержащий новые имена столбцов с размером, равным количеству столбцов.

Когда вам нужно переименовать указанные c столбцы, используйте «переименовать», как показано в других ответах.

1 голос
/ 09 марта 2020

Используйте функцию переименования:

# df = some data frame
# new_col_list = new column names

# get the old columns names
old_columns = list(df)

# rename the columns inplate
df.rename(columns={old_columns[idx]: name for  (idx, name) in enumerate(new_col_list)}, inplace=True)

См. Также: https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.rename.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...