Python: pandas merge DataFrames on Common Column


In pandas we can merge two or more Dataframes based on a common column by using the pandas.merge() function and setting on parameter as the common column name.

Let's take a look at an example:

Example: Pandas Merge on Common Column

import pandas as pd

data_city_NYC = {
    'Dates': ['2023-07-01', '2023-07-02', '2023-07-03'],
    'Temp_NYC': [25, 30, 27],
    'Humidity_NYC': [50, 45, 55]
}

data_city_Chicago = {
    'Dates': ['2023-07-01', '2023-07-02', '2023-07-03'],
    'Temp_Chicago': [28, 32, 29],
    'Humidity_Chicago': [60, 58, 62]
}


df_city_NYC = pd.DataFrame(data_city_NYC).set_index('Dates')
df_city_Chicago = pd.DataFrame(data_city_Chicago).set_index('Dates')

print("DataFrame: NYC City")
print(df_city_NYC)
print("\nDataFrame: Chicago City")
print(df_city_Chicago)

# Merge the DataFrames on the common column 'Dates'
merged_cities_df = pd.merge(df_city_NYC, df_city_Chicago, on='Dates')

print("\nMerged DataFrames on Common Column Dates:")
print(merged_cities_df)
Output:
DataFrame: NYC City
            Temp_NYC  Humidity_NYC
Dates                             
2023-07-01        25            50
2023-07-02        30            45
2023-07-03        27            55

DataFrame: Chicago City
            Temp_Chicago  Humidity_Chicago
Dates                                     
2023-07-01            28                60
2023-07-02            32                58
2023-07-03            29                62

Merged DataFrames on Common Column Dates:
            Temp_NYC  Humidity_NYC  Temp_Chicago  Humidity_Chicago
Dates                                                             
2023-07-01        25            50            28                60
2023-07-02        30            45            32                58
2023-07-03        27            55            29                62
Python Pandas Merge DataFrames on Common Column Example

Facing issues? Have Questions? Post them here! I am happy to answer!

Author Info:

Rakesh (He/Him) has over 14+ years of experience in Web and Application development. He is the author of insightful How-To articles for Code2care.

Follow him on: X

You can also reach out to him via e-mail: rakesh@code2care.org

Copyright ยฉ Code2care 2024 | Privacy Policy | About Us | Contact Us | Sitemap