Pandas: Joining on index

Pandas Joining and merging DataFrame: Exercise-13 with Solution

Write a Pandas program to combine the columns of two potentially differently-indexed DataFrames into a single result DataFrame.

Test Data:

     A   B
K0  A0  B0
K1  A1  B1
K2  A2  B2
     C   D
K0  C0  D0
K2  C2  D2
K3  C3  D3

Sample Solution:

Python Code :

import pandas as pd
data1 = pd.DataFrame({'A': ['A0', 'A1', 'A2'],
                      'B': ['B0', 'B1', 'B2']},
                     index=['K0', 'K1', 'K2'])

data2 = pd.DataFrame({'C': ['C0', 'C2', 'C3'],
                      'D': ['D0', 'D2', 'D3']},
                     index=['K0', 'K2', 'K3'])
print("Original DataFrames:")
print("\nMerged Data (Joining on index):")
result = data1.join(data2)

Sample Output:

Original DataFrames:
     A   B
K0  A0  B0
K1  A1  B1
K2  A2  B2
     C   D
K0  C0  D0
K2  C2  D2
K3  C3  D3

Merged Data (Joining on index):
     A   B    C    D
K0  A0  B0   C0   D0
K1  A1  B1  NaN  NaN
K2  A2  B2   C2   D2

Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Pandas program to create a combination from two dataframes where a column id combination appears more than once in both dataframes.
Next: Write a Pandas program to merge two given dataframes with different columns.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

Follow us on Facebook and Twitter for latest update.