Передача строковой переменной для переименования функции pandas - PullRequest
0 голосов
/ 13 сентября 2018

Я пытаюсь переименовать один столбец в кадре данных, передавая строковую переменную для переименования функции и получая приведенную ниже ошибку, любая помощь очень ценится.

new = "new_name"

df.rename (index = str, columns = {"old_name": new})

TypeError: объект 'set' не может быть вызван

1 Ответ

0 голосов
/ 13 сентября 2018

Вам не нужен бит index = str, это будет работать, если ваш столбец не является вашим индексом:

new="new_name"
df.rename(columns={'old_name':new})

ввод:

   ID1  old_name      Date
0    1    2      1/1/2018
1    1    2      3/1/2018
2    1    2      4/5/2018 

Выход:

   ID1    new_name      Date
0    1         2    1/1/2018
1    1         2    3/1/2018
2    1         2    4/5/2018       

если вы хотите сохранить его:

df = df.rename(columns={'old_name':new})

если вы хотите переименовать индекс:

df.index.rename(new, inplace=True)

выход:

          ID1   ID2      Date
new_name                    
0           1    2    1/1/2018
1           1    2    3/1/2018
2           1    2    4/5/2018
...