Python Pandas – Find the Difference between two Dataframes



To find the difference between two DataFrame, you need to check for its equality. Also, check the equality of columns.

Let us create DataFrame1 with two columns −

dataFrame1 = pd.DataFrame( { "Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'], "Units": [100, 150, 110, 80, 110, 90] } )

Create DataFrame2 with two columns −

dataFrame2 = pd.DataFrame(    { "Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'], "Units": [100, 150, 110, 80, 110, 90] } ) 

Check for the equality of a specific column “Units” −

dataFrame2['Units'].equals(dataFrame1['Units'])

Check for equality of both the DataFrames −

Are both the DataFrames equal?",dataFrame1.equals(dataFrame2) 

Example

Following is the code −

import pandas as pd # Create DataFrame1 dataFrame1 = pd.DataFrame( { "Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'], "Units": [100, 150, 110, 80, 110, 90] } ) print"DataFrame1 ...\n",dataFrame1 # Create DataFrame2 dataFrame2 = pd.DataFrame( { "Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'], "Units": [100, 150, 110, 80, 110, 90] } ) print"\nDataFrame2 ...\n",dataFrame2 # check for specific column Units equality print"\nBoth the DataFrames have similar Units column? ",dataFrame2['Units'].equals(dataFrame1['Units']) # check for equality print"\nAre both the DataFrames equal? ",dataFrame1.equals(dataFrame2)

Output

This will produce the following output −

DataFrame1 ...        Car   Units 0      BMW     100 1    Lexus     150 2     Audi     110 3  Mustang      80 4  Bentley     110 5   Jaguar      90 DataFrame2 ...        Car Units 0      BMW     100 1    Lexus 150 2     Audi 110 3  Mustang 80 4  Bentley 110 5   Jaguar 90 Both the DataFrames have similar Units column? True Are both the DataFrames equal? True
Updated on: 2021-09-14T11:57:22+05:30

802 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements