Handling overlapping columns in Pandas merge using suffixes
Pandas: Custom Function Exercise-14 with Solution
Write a Pandas program to merge DataFrames using suffixes for overlapping columns.
In this exercise, we have handled overlapping columns during a merge by specifying custom suffixes.
Sample Solution :
Code :
import pandas as pd
# Create two sample DataFrames with overlapping column names
df1 = pd.DataFrame({
'ID': [1, 2, 3],
'Name': ['Selena', 'Annabel', 'Caeso'],
'Age': [25, 30, 22]
})
df2 = pd.DataFrame({
'ID': [1, 2, 3],
'Name': ['Selena', 'Annabel', 'Caeso'],
'Age': [27, 31, 23]
})
# Merge the DataFrames, handling overlapping 'Age' column with suffixes
merged_df = pd.merge(df1, df2, on=['ID', 'Name'], suffixes=('_left', '_right'))
# Output the result
print(merged_df)
Output:
ID Name Age_left Age_right 0 1 Selena 25 27 1 2 Annabel 30 31 2 3 Caeso 22 23
Explanation:
- Created two DataFrames df1 and df2 with overlapping column names ('ID', 'Name', 'Age').
- Used pd.merge() and the suffixes argument to specify custom suffixes for the overlapping 'Age' column.
- The result includes both 'Age_left' and 'Age_right' to differentiate between the two DataFrames.
Python-Pandas Code Editor:
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics