5 Easy Ways to Rename columns in Pandas

Rename columns in Pandas: In today’s data-driven world, Pandas DataFrame has emerged as a cornerstone tool for various applications, ranging from data analytics to machine learning and beyond. With its versatility and ease of use, Pandas has become a go-to choice for professionals across industries, including data engineering and software development.

At the heart of efficient data analysis lies the ability to clean and manipulate data effectively. Renaming columns is often the initial step in this process, laying the foundation for clearer and more structured data. In this concise tutorial, we’ll explore four essential methods to rename columns in Pandas, empowering you to streamline your data cleaning workflow and unlock insights with ease. Let’s dive in!

How to rename columns in Pandas

change column name pandas

Renaming columns in Pandas is a common operation when working with tabular data. Whether you need to make column names more descriptive or align them with a specific naming convention, Pandas offers several methods to accomplish this task efficiently. In this article, we’ll explore five different ways to rename columns in Pandas with real-time examples, along with some handy tips to enhance your Pandas skills.

5 Easy Ways to Rename columns in Pandas

1. Pandas: Using the rename() method

The rename() method allows you to rename one or more columns by providing a dictionary mapping the old column names to the new ones. Let’s say we have a DataFrame with columns ‘Old_Name’ and ‘Salary’, and we want to rename them to ‘Employee_ID’ and ‘Monthly_Salary’, respectively.

import pandas as pd

# Create a DataFrame
data = {'Old_Name': [1, 2, 3], 'Salary': [1000, 2000, 3000]}
df = pd.DataFrame(data)

# Rename columns using rename() method
df = df.rename(columns={'Old_Name': 'Employee_ID', 'Salary': 'Monthly_Salary'})
print(df)

2. Using the columns attribute:

You can directly assign a list of new column names to the columns attribute of the DataFrame. This method is useful when you want to rename all columns at once.

import pandas as pd

# Create a DataFrame
data = {'Old_Name': [1, 2, 3], 'Salary': [1000, 2000, 3000]}
df = pd.DataFrame(data)

# Rename columns using columns attribute
df.columns = ['Employee_ID', 'Monthly_Salary']
print(df)

3. Pandas: Using the rename_axis() method:

The rename_axis() method allows you to rename the axis (index or column) of the DataFrame. This method is particularly useful when working with multi-index DataFrames.

import pandas as pd

# Create a DataFrame with multi-index columns
data = {'Old_Name': [1, 2, 3], 'Salary': [1000, 2000, 3000]}
df = pd.DataFrame(data, columns=pd.MultiIndex.from_tuples([('A', 'Old_Name'), ('B', 'Salary')]))

# Rename multi-index columns using rename_axis() method
df = df.rename_axis(index={'A': 'Department'}, columns={'Old_Name': 'Employee_ID'})
print(df)

4. Using list comprehension with the rename() method:

You can use list comprehension in conjunction with the rename() method to rename columns based on specific criteria. This method provides flexibility when renaming columns based on patterns or conditions.

import pandas as pd

# Create a DataFrame
data = {'InterviewZilla_Name': [1, 2, 3], 'InterviewZilla_Salary': [1000, 2000, 3000]}
df = pd.DataFrame(data)

# Rename columns using list comprehension with rename() method
df.columns = [col.replace('InterviewZilla_', '') for col in df.columns]
print(df)

5. Pandas: Using a custom function with the rename() method:

Define a custom function to rename columns and apply it using the rename() method. This approach is useful when you need to perform more complex transformations on column names.

import pandas as pd

# Create a DataFrame
data = {'Name': [1, 2, 3], 'Salary': [1000, 2000, 3000]}
df = pd.DataFrame(data)

# Define a custom function to add prefix to column names
def add_prefix(column_name):
    return 'InterviewZilla_' + column_name

# Rename columns using custom function with rename() method
df = df.rename(columns=add_prefix)
print(df)

Handy Tips for Pandas:

  • Use descriptive column names: Clear and descriptive column names make your code more readable and understandable.
  • Check for duplicate column names: Duplicate column names can cause unexpected behavior. Always check for duplicates before renaming columns.
  • Consider data types: Renaming columns can affect data types. Ensure that the new column names align with the data types of the columns.
  • Use inplace parameter: Some methods like rename() support an inplace parameter, allowing you to modify the DataFrame in place without creating a new copy.

With these five easy ways to rename columns in Pandas and some handy tips, you’ll be better equipped to manipulate and analyze your data effectively. Happy coding with Pandas! 🐼🚀

Click here for more related post.

Click here to know more about Pandas.

About the Author