Python - How to rename multiple column headers in a Pandas DataFrame with Dictionary?


To rename multiple column headers, use the rename() method and set the dictionary in the columns parameter. At first, let us create a DataFrame −

dataFrame = pd.DataFrame({"Car": ['BMW', 'Mustang', 'Tesla', 'Mustang', 'Mercedes', 'Tesla', 'Audi'],"Cubic Capacity": [2000, 1800, 1500, 2500, 2200, 3000, 2000],"Reg Price": [7000, 1500, 5000, 8000, 9000, 6000, 1500],"Units Sold": [ 200, 120, 150, 120, 210, 250, 220]
})

Creating a dictionary to rename columns. The key and value pairs as old name and new name −

dictionary = {'Car': 'Car Name','Cubic Capacity': 'CC','Reg Price': 'Registration Price','Units Sold': 'Units Purchased'
}

Use rename() and set the dictionary as columns −

dataFrame.rename(columns=dictionary, inplace=True)

Example

Following is the code −

import pandas as pd

# creating dataframe
dataFrame = pd.DataFrame({"Car": ['BMW', 'Mustang', 'Tesla', 'Mustang', 'Mercedes', 'Tesla', 'Audi'],"Cubic Capacity": [2000, 1800, 1500, 2500, 2200, 3000, 2000],"Reg Price": [7000, 1500, 5000, 8000, 9000, 6000, 1500],"Units Sold": [ 200, 120, 150, 120, 210, 250, 220]
})

print"DataFrame ...\n",dataFrame

# creating a dictionary to rename columns
# key and value pairs as old name and new name
dictionary = {'Car': 'Car Name','Cubic Capacity': 'CC','Reg Price': 'Registration Price','Units Sold': 'Units Purchased'
}

# using rename() and setting the dictionary as columns
dataFrame.rename(columns=dictionary, inplace=True)

print"\nUpdated DataFrame ...\n",dataFrame

Output

This will produce the following output −

DataFrame ...
        Car   Cubic Capacity   Reg Price   Units Sold
0       BMW             2000        7000          200
1   Mustang             1800        1500          120
2     Tesla             1500        5000          150
3   Mustang             2500        8000          120
4  Mercedes             2200        9000          210
5     Tesla             3000        6000          250
6      Audi             2000        1500          220

Updated DataFrame ...
   Car Name    CC   Registration Price   Units Purchased
0       BMW  2000                 7000               200
1   Mustang  1800                 1500               120
2     Tesla  1500                 5000               150
3   Mustang  2500                 8000               120
4  Mercedes  2200                 9000               210
5     Tesla  3000                 6000               250
6      Audi  2000                 1500               220

Updated on: 21-Sep-2021

662 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements