#python #pandas #dataframe #csv #sorting
#python #pandas #фрейм данных #csv #сортировка
Вопрос:
У меня есть фрейм данных с общим количеством столбцов 3000, имеющих имена заголовков в виде чисел, кроме первого столбца, который является строкой. Все это повторяющиеся столбцы с одинаковыми значениями. Текущий порядок i:
First, 0, 1, 2, 3,....3000, 0, 1, 2, 3,....,3000, 0, 1, 2, 3,...,3000, 0, 1, 2, 3,....,3000
Я хочу, чтобы они были отсортированы следующим образом:
First, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3,....,3000, 3000, 3000, 3000
Все значения одинаковы для этих повторяющихся столбцов. Я попробовал df = df.sort_index() на оси 1 и аналогично, df[sorted(df.columns)], но они дают другой порядок сортировки, а не то, что мне нужно.
Любая помощь?
Ответ №1:
Преобразовать First
в индекс, все остальные столбцы в целые числа, сортировка и последнее преобразование First
в столбец:
df = df.set_index('First').rename(columns=int).sort_index(axis=1).reset_index()