Метод 1: использование reindex()
Вы можете изменить порядок столбцов, вызвав DataFrame.reindex() в исходном DataFrame с измененным списком столбцов в качестве аргумента.
new_dataframe = dataframe.reindex(columns=['a', 'c', 'b'])
Функция reindex() возвращает новый DataFrame с заданным порядком столбцов.
В следующей программе мы возьмем DataFrame со столбцами a, b, c и изменим порядок столбцов на a, c, b.
import pandas as pd #initialize a dataframe df = pd.DataFrame( [[21, 72, 67], [23, 78, 62], [32, 74, 54], [52, 54, 76]], columns=['a', 'b', 'c']) #change order of columns df_new = df.reindex(columns=['a', 'c', 'b']) #print new dataframe print(df_new)
Вывод:
a c b 0 21 67 72 1 23 62 78 2 32 54 74 3 52 76 54
Метод 2: использование индексации
Индексирование DataFrame может использоваться для изменения порядка столбцов в данном DataFrame.
Ниже приведен синтаксис для использования индексации DataFrame.
new_dataframe = dataframe[['a', 'c', 'b']]
В следующей программе мы возьмем DataFrame со столбцами a, b, c и изменим порядок столбцов на a, c, b.
import pandas as pd #initialize a dataframe df = pd.DataFrame( [[21, 72, 67], [23, 78, 62], [32, 74, 54], [52, 54, 76]], columns=['a', 'b', 'c']) #change order of columns df_new = df[['a', 'c', 'b']] #print new dataframe print(df_new)
Вывод:
a c b 0 21 67 72 1 23 62 78 2 32 54 74 3 52 76 54
Метод 3: использование конструктора
Вы также можете использовать конструктор DataFrame, чтобы изменить порядок столбцов. Создайте существующий DataFrame необработанными данными и создайте новый DataFrame с этими необработанными данными и желаемым порядком столбцов.
Ниже приведен синтаксис для создания DataFrame с обновленным порядком столбцов.
new_dataframe = pd.dataframe(raw_data, index=['a', 'c', 'b'])
В следующей программе мы возьмем DataFrame со столбцами a, b, c и изменим порядок столбцов на a, c, b.
import pandas as pd #initialize a dataframe df = pd.DataFrame( [[21, 72, 67], [23, 78, 62], [32, 74, 54], [52, 54, 76]], columns=['a', 'b', 'c']) #change order of columns df_new = pd.DataFrame(df, columns=['a', 'c', 'b']) #print new dataframe print(df_new)
Вывод:
a c b 0 21 67 72 1 23 62 78 2 32 54 74 3 52 76 54
В этом руководстве по Python мы узнали, как изменить порядок столбцов в DataFrame.