Pandas reorder columns
Tags: pandas, python, beginners, webdev
Published: 2022-10-02 16:04:16


pandas is a python library that helps to analyze data by using the data analysis algorithm of data science. 
Pandas reorder columns by using multiple easy methods. Here we are going to reorder pandas columns categorically by index, by value, alphabetically, in reverse order, etc.
Here we first create a simple dataframe by using the pandas library.

```python 
#Simple dataframe
import pandas as pd
df = pd.DataFrame(
    {
        'Name'    : ['Brian', 'Morgan', 'Anderson', 'Clark', 'Junaid'],
        'Subject' : ['DSA', 'DS', 'OSDC', 'MAPD', 'CAAP'],
        'Language': ['Python', 'MATLAB','C', 'JAVA','Assembly'],
        'Marks'   :  [80, 70, 94, 78, 91]
    }
)
print(df),
```


**Output**

```
  Name Subject  Language  Marks
0     Brian     DSA    Python     80
1    Morgan      DS    MATLAB     70
2  Anderson    OSDC         C     94
3     Clark    MAPD      JAVA     78
4    Junaid    CAAP  Assembly     91

```




### 1.  Pandas reorder columns based on list
Our first method pandas reorder columns based on the list. In this below method, set the column sequence as a list you want to display in the output. The output will print in the sequence that is mentioned as in the list such as print “language” column and so on as below.

```python
#Pandas reorder columns based on list
df = df['Language', 'Marks', 'Subject', 'Name']
print(df)
```

**Output**

```
   Language  Marks Subject      Name
0    Python     80     DSA     Brian
1    MATLAB     70      DS    Morgan
2         C     94    OSDC  Anderson
3      JAVA     78    MAPD     Clark
4  Assembly     91    CAAP    Junaid
```




### 2.	Pandas reorder columns by index
Use  .reindex(columns) method  to reorder columns in pandas. This method will help you reorder columns by using the index position name. By defining the sequence of columns inside the .reindex() function, you will get the output in that sequence.

 

```python
#Pandas reorder columns by index
df = df.reindex(columns=['Subject', 'Language', 'Name', 'Marks'])
print(df)
```

**Output**

```
    Subject  Language    Name  Marks
0     DSA    Python     Brian     80
1      DS    MATLAB    Morgan     70
2    OSDC         C  Anderson     94
3    MAPD      JAVA     Clark     78
4    CAAP  Assembly    Junaid     91
```




### 3.	pandas reorder columns alphabetically
Here we are going to use the sort method. Pandas reorder columns alphabetically by the sort index method that sorts all the columns in alphabetic sequence. Such as “Language, Marks, Name, Subject”
 

```python
#pandas reorder columns alphabetically
sorted_column_df = df.sort_index(axis=1)
print(sorted_column_df)
```


**Output**


```
   Language  Marks      Name Subject
0    Python     80     Brian     DSA
1    MATLAB     70    Morgan      DS
2         C     94  Anderson    OSDC
3      JAVA     78     Clark    MAPD
4  Assembly     91    Junaid    CAAP
```



### 4.	pandas reorder columns by value
this method helps to reorder columns in pandas by value. This method works internally on the column. Select the “Name” column and sorted that column values in ascending order. 

```python
#Pandas reorder columns by value
df = df.sort_values(by ='Marks' , ascending=True)
print(df)
```


**Output**

```
       Name Subject  Language  Marks
1    Morgan      DS    MATLAB     70
3     Clark    MAPD      JAVA     78
0     Brian     DSA    Python     80
4    Junaid    CAAP  Assembly     91
2  Anderson    OSDC         C     94

```




### 5.	Pandas reorder columns in reverse
Pandas reorder columns in reverse order by using the built-in reverse () function. 

```python
# Pandas reorder columns in reverse
cols = list(df.columns)
cols.reverse()
df[cols]
```


**Output**

```
     Marks	Language   Subject  Name
0	80	 Python	DSA	   Brian
1	70	 MATLAB	DS	   Morgan
2	94	  C	     OSDC	   Anderson
3	78	 JAVA      MAPD	   Clark
4	91	Assembly   CAAP	   Junaid

```






### Conclusion 
In this article, we have five different methods that help to reorder columns in pandas. We reorder columns on the based list, values, index, in reverse order, alphabetically, etc.