- Как изменить порядок столбцов в PandaS DataFrame?
- Метод 2 – Использование индексации DataFrame
- Способ 3 – Использование конструктора DataFrame
- Резюме
- Читайте ещё по теме:
- Как изменить порядок столбцов в Pandas DataFrame
- Пример 1: изменение порядка столбцов по имени
- Пример 2: изменение порядка путем добавления нового первого столбца
- Пример 3: изменение порядка путем добавления нового последнего столбца
- Как изменить порядок столбцов DataFrame
- Список колонок в новом желаемом порядке в Pandas
- вставить новую колонку с расположением в Pandas
- колонка реиндекс для заданного порядка в Pandas
- Сопутствующая статья — Pandas DataFrame
- Сопутствующая статья — Pandas DataFrame Column
- Изменение порядка столбцов в DataFrame Pandas
- Метод 2: использование индексации
- Метод 3: использование конструктора
- Как поменять местами два столбца в Pandas (с примером)
- Пример: поменять местами два столбца в Pandas
- Дополнительные ресурсы
Как изменить порядок столбцов в PandaS DataFrame?
Вы можете изменить порядок столбцов, вызывая 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.
Ниже приведен синтаксис для использования индексации 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, с этим необработанным данным и желаемым порядком столбцов.
Ниже приведен синтаксис для создания 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.
Читайте ещё по теме:
Как изменить порядок столбцов в Pandas DataFrame
Вы можете использовать следующий синтаксис, чтобы быстро изменить порядок столбцов в кадре данных pandas:
df[['column2', 'column3', 'column1']]
В следующих примерах показано, как использовать этот синтаксис со следующими пандами DataFrame:
import pandas as pd #create new DataFrame df = pd.DataFrame() #display DataFrame df points assists rebounds 0 25 5 11 1 12 7 8 2 15 7 10 3 14 9 6 4 19 12 6 5 23 9 5 6 25 9 9 7 29 4 12
Пример 1: изменение порядка столбцов по имени
В следующем коде показано, как изменить порядок столбцов в DataFrame на основе имени:
#change order of columns by name df[['rebounds', 'assists', 'points']] rebounds assists points 0 11 5 25 1 8 7 12 2 10 7 15 3 6 9 14 4 6 12 19 5 5 9 23 6 9 9 25 7 12 4 29
Пример 2: изменение порядка путем добавления нового первого столбца
В следующем коде показано, как изменить порядок столбцов в DataFrame, вставив новый столбец в первую позицию:
#define new column to add steals = [2, 3, 3, 4, 3, 2, 1, 2] #insert new column in first position df.insert (0, 'steals', steals) #display dataFrame df steals points assists rebounds 0 2 25 5 11 1 3 12 7 8 2 3 15 7 10 3 4 14 9 6 4 3 19 12 6 5 2 23 9 5 6 1 25 9 9 7 2 29 4 12
Пример 3: изменение порядка путем добавления нового последнего столбца
В следующем коде показано, как изменить порядок столбцов в DataFrame, вставив новый столбец в последнюю позицию DataFrame:
#define new column to add steals = [2, 3, 3, 4, 3, 2, 1, 2] #insert new column in last position df.insert ( len(df.columns ), 'steals', steals) #display dataFrame df points assists rebounds steals 0 25 5 11 2 1 12 7 8 3 2 15 7 10 3 3 14 9 6 4 4 19 12 6 3 5 23 9 5 2 6 25 9 9 1 7 29 4 12 2
Как изменить порядок столбцов DataFrame
- Список колонок в новом желаемом порядке в Pandas
- вставить новую колонку с расположением в Pandas
- колонка реиндекс для заданного порядка в Pandas
Мы расскажем, как изменить порядок следования колонок DataFrame , с помощью различных методов, таких как назначение названий колонок в нужном нам порядке, с помощью insert и reindex .
Список колонок в новом желаемом порядке в Pandas
Самый простой способ — переназначить DataFrame со списком столбцов , или просто назначить имена столбцов в том порядке, в котором мы их хотим:
# python 3.x import pandas as pd df = pd.DataFrame('a':['1','2','3','4'], 'b': [16,7,6,16], 'c':[61,57,16,36], 'd':['12','22','13','44'], 'e':['Green','Red','Blue','Yellow'], 'f':[1,11,23,66]>) print(df) df = df[['e','c','b','f','d','a']] print('Rearranging . ') print('. ') print(df)
a b c d e f 0 1 16 61 12 Green 1 1 2 7 57 22 Red 11 2 3 6 16 13 Blue 23 3 4 16 36 44 Yellow 66 Rearranging . . e c b f d a 0 Green 61 16 1 12 1 1 Red 57 7 11 22 2 2 Blue 16 6 23 13 3 3 Yellow 36 16 66 44 4
вставить новую колонку с расположением в Pandas
Если мы создаем новую колонку, мы можем вставить ее в любое место:
# python 3.x import pandas as pd df = pd.DataFrame('a':['1','2','3','4'], 'b': [16,7,6,16], 'c':[61,57,16,36], 'd':['12','22','13','44'], 'e':['Green','Red','Blue','Yellow'], 'f':[1,11,23,66]>) print(df) print('Inserting . ') print('. ') df.insert(0, 'newColMean', df.mean(1)) print(df)
newColMean a b c d e f 0 26.000000 1 16 61 12 Green 1 1 25.000000 2 7 57 22 Red 11 2 15.000000 3 6 16 13 Blue 23 3 39.333333 4 16 36 44 Yellow 66
колонка реиндекс для заданного порядка в Pandas
reindex — это, пожалуй, самый эффективный способ перестановки колонны:
# python 3.x import pandas as pd df = pd.DataFrame('a':['1','2','3','4'], 'b': [16,7,6,16], 'c':[61,57,16,36], 'd':['12','22','13','44'], 'e':['Green','Red','Blue','Yellow'], 'f':[1,11,23,66]>) print(df) print('Rearranging . ') print('. ') df = df.reindex(columns=['a','f','d','b','c','e']) print(df)
a b c d e f 0 1 16 61 12 Green 1 1 2 7 57 22 Red 11 2 3 6 16 13 Blue 23 3 4 16 36 44 Yellow 66 Rearranging . . a f d b c e 0 1 1 12 16 61 Green 1 2 11 22 7 57 Red 2 3 23 13 6 16 Blue 3 4 66 44 16 36 Yellow
Сопутствующая статья — Pandas DataFrame
Сопутствующая статья — Pandas DataFrame Column
Copyright © 2023. All right reserved
Изменение порядка столбцов в DataFrame Pandas
Вы можете изменить порядок столбцов, вызвав 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.
Как поменять местами два столбца в Pandas (с примером)
Вы можете использовать следующую пользовательскую функцию, чтобы поменять местами два столбца в кадре данных pandas:
def swap_columns (df, col1, col2): col_list = list(df.columns ) x, y = col_list. index (col1), col_list. index (col2) col_list[y], col_list[x] = col_list[x], col_list[y] df = df[col_list] return df
Эта функция поменяет местами столбцы col1 и col2 в DataFrame.
В следующем примере показано, как использовать эту функцию на практике.
Пример: поменять местами два столбца в Pandas
Предположим, у нас есть следующие Pandas DataFrame:
import pandas as pd #create DataFrame df = pd.DataFrame() #view DataFrame print(df) team points assists rebounds 0 A 18 5 11 1 B 22 7 8 2 C 19 7 10 3 D 14 9 6 4 E 14 12 6 5 F 11 9 5 6 G 20 9 9 7 H 28 4 12
Мы можем определить функцию swap_columns() , чтобы поменять местами столбцы «точки» и «отскоки»:
#define function to swap columns def swap_columns (df, col1, col2): col_list = list(df.columns ) x, y = col_list. index (col1), col_list. index (col2) col_list[y], col_list[x] = col_list[x], col_list[y] df = df[col_list] return df #swap points and rebounds columns df = swap_columns (df, 'points', 'rebounds'): #view updated DataFrame print(df) team rebounds assists points 0 A 11 5 18 1 B 8 7 22 2 C 10 7 19 3 D 6 9 14 4 E 6 12 14 5 F 5 9 11 6 G 9 9 20 7 H 12 4 28
Обратите внимание, что столбцы «очки» и «подборы» поменялись местами, в то время как все остальные столбцы остались на прежнем месте.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas: