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