In this article, we will discuss how to merge two Pandas Dataframes on Index in Python.
Merge two Pandas DataFrames on Index using join()
This join() method is used to join the Dataframe based on the index.
Python3
# import pandas module import pandas as pd # create student dataframe data1 = pd.DataFrame({ 'id' : [ 1 , 2 , 3 , 4 ], 'name' : [ 'manoj' , 'manoja' , 'manoji' , 'manij' ]}, index = [ 'one' , 'two' , 'three' , 'four' ]) # create marks dataframe data2 = pd.DataFrame({ 's_id' : [ 1 , 2 , 3 , 6 , 7 ], 'marks' : [ 98 , 90 , 78 , 86 , 78 ]}, index = [ 'one' , 'two' , 'three' , 'siz' , 'seven' ]) # join two dataframes print (data1.join(data2)) |
Output:
Merge Two Pandas DataFrames on Index using merge()
This merge() method will merge the two Dataframes with matching indexes
Python3
# import pandas module import pandas as pd # join two dataframes with merge print (pd.merge(data1, data2, left_index = True , right_index = True )) |
Output:
Merge Two Pandas DataFrames on Index using concat()
We can concatenate two Dataframes by using concat() method by setting axis=1.
Python3
# import pandas module import pandas as pd # join two dataframes with concat print (pd.concat([data1, data2], axis = 1 )) |
Output:
Recommended Article: Pandas Merging, Joining, and Concatenating