Переименование ряда столбцов с использованием цикла for (python)

#python #python-3.x #pandas #dataframe

#python #python-3.x #pandas #фрейм данных

Вопрос:

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

daily1=

         0   1   2   3   4   5   6   7   8   9   ... 11  12  13  14  15  16  17  18  19  20
    0   0   0   0   0   0   0   4   0   0   0   ... 640 777 674 842 786 865 809 674 679 852
    1   0   0   0   0   0   0   0   0   0   0   ... 108 29  74  102 82  62  83  68  30  61
2 rows × 244 columns
  

Я хотел бы упорядочить имена столбцов в числовом порядке (от 0 до 243)

Я попытался

 for i, n in zip(daily1.columns, range(244)):
    asd=daily1.rename(columns={i:n})
    asd
  

но вывод не показан…

Идеальный результат

         0   1   2   3   4   5   6   7   8   9   ... 234 235 236 237 238 239 240 241 242 243
    0   0   0   0   0   0   0   4   0   0   0   ... 640 777 674 842 786 865 809 674 679 852
    1   0   0   0   0   0   0   0   0   0   0   ... 108 29  74  102 82  62  83  68  30  61
  

Могу ли я получить несколько советов, ребята? Спасибо

Ответ №1:

Если вы хотите изменить порядок столбцов, вы можете попробовать это

 columns = sorted(list(df.columns), reverse=False)
df = df[columns]
  

Если вы просто хотите переименовать столбцы, вы можете попробовать

 df.columns = [i for i in range(df.shape[1])]