Change the order of columns in Pandas dataframe


import modules

import pandas as pd
import numpy as np


create dummy dataframe

raw_data = {'name': ['Willard Morris', 'Al Jennings', 'Omar Mullins', 'Spencer McDaniel'],
'age': [20, 19, 22, 21],
'favorite_color': ['blue', 'red', 'yellow', "green"],
'grade': [88, 92, 95, 70]}
df = pd.DataFrame(raw_data, index = ['Willard Morris', 'Al Jennings', 'Omar Mullins', 'Spencer McDaniel'])
df
age favorite_color grade name
Willard Morris 20 blue 88 Willard Morris
Al Jennings 19 red 92 Al Jennings
Omar Mullins 22 yellow 95 Omar Mullins
Spencer McDaniel 21 green 70 Spencer McDaniel


change order of the columns

#now 'age' will appear at the end of our df
df = df[['favorite_color','grade','name','age']]
df.head()
favorite_color grade name age
Willard Morris blue 88 Willard Morris 20
Al Jennings red 92 Al Jennings 19
Omar Mullins yellow 95 Omar Mullins 22
Spencer McDaniel green 70 Spencer McDaniel 21


Ace your next data science interview

Get better at data science interviews by solving a few questions per week



Find a bug? Submit a suggested change on Github, or message me on Twitter.