簡體   English   中英

如何比較 Python 中兩個數據框中的兩列值?

[英]How to compare two columns values in two dataframes in Python?

我有兩個數據框,我在第二個 dataframe 中創建了一個“檢查”列,以檢查總索賠列中的值是否相等。 這是我的兩個數據框:

Dataframe 1

在此處輸入圖像描述

Dataframe 2

在此處輸入圖像描述

我用來創建“檢查”列比較兩個數據框之間的總索賠的代碼是:

reported_claims['Check'] =  np.where(reported_claims['Total Claims'].reset_index(drop=True) == df['Total Claims'].reset_index(drop=True) , 'TRUE', 'FALSE')

我注意到兩個數據框中的第 7 個值都是 31.32,但檢查列顯示為 False。 我只是想知道為什么它說 False 以及我將如何解決這個問題? 非常感謝您的參與!

通過比較兩個浮點數會出現問題。 大多數編程語言(包括 python)的一般規則是你永遠不能檢查兩個浮點數是否完全相等 您必須改為檢查這兩個值是否接近。 您可以使用np.isclose()這樣做。 檢查此答案以獲取有關如何使用它的參考。

使用合並命令連接兩個 dataframe 並添加檢查列以比較兩列

df = pd.merge(left=Dataframe1, right=Dataframe2, left_on='month', right_on='month')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM