logo

Merging DataFrames

Merging joins two DataFrames on a shared column, like SQL's JOIN.

orders = pd.DataFrame({'order_id': [1, 2], 'customer_id': [101, 102]})
customers = pd.DataFrame({'customer_id': [101, 102], 'name': ['Alice', 'Bob']})

merged = pd.merge(orders, customers, on='customer_id')

The result combines columns from both DataFrames, matching on customer_id.

When column names differ, specify both:

pd.merge(df1, df2, left_on='cust_id', right_on='customer_id')

Merging is essential when your data is spread across multiple tables or files.

I dedicate a full section to merging in my Pandas course.