Python Pandas - 查詢兩個資料框之間的差異


如需找出兩個 DataFrame 之間的差異,你需要檢查它們的相等性。此外,還要檢查列的相等性。

讓我們建立包含兩列的 DataFrame1 −

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

建立包含兩列的 DataFrame2 −

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

檢查特定列“Units”的相等性 −

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

檢查兩個 DataFrame 的相等性 −

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

示例

以下為程式碼 −

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)

輸出

這將產生以下輸出 −

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

更新時間:2021 年 9 月 14 日

717 瀏覽次數

開啟您的 職業生涯

完成課程獲得認證

開始
廣告