」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何找到一個資料幀中存在但另一個資料幀中不存在的行(比較 df1 和 df2)?

如何找到一個資料幀中存在但另一個資料幀中不存在的行(比較 df1 和 df2)?

發佈於2024-11-07
瀏覽:327

How to Find Rows Present in One Dataframe but Not in Another (Comparing df1 and df2)?

比較資料幀:尋找中存在但另一個中不存在的行

比較資料幀以識別差異對於資料品質保證和合併至關重要營運。在本例中,我們有兩個具有特定結構的資料幀(df1 和 df2),需要確定 df2 中存在但 df1 中不存在的行。

最初,嘗試使用 df1 != df2 比較資料幀,結果是錯誤。此方法僅適用於具有相同行和列的資料框。為了找到對稱差異,我們需要不同的方法。

一種方法涉及連接資料幀:

df = pd.concat([df1, df2])
df = df.reset_index(drop=True)

然後,按所有列將連接的資料幀分組:

df_gpby = df.groupby(list(df.columns))

接下來,我們透過取得僅存在一行的索引值來識別唯一記錄:

idx = [x[0] for x in df_gpby.groups.values() if len(x) == 1]

使用這些索引,我們可以過濾資料幀以獲得所需的結果:

df.reindex(idx)

此方法提供df2 中存在但不存在的行在df1 中基於日期索引和Fruit 列的比較。

版本聲明 本文轉載於:1729343178如有侵犯,請洽[email protected]刪除
最新教學 更多>
  • ClassiSage:基於 Terraform IaC 自動化 AWS SageMaker HDFS 日誌分類模型
    ClassiSage:基於 Terraform IaC 自動化 AWS SageMaker HDFS 日誌分類模型
    ClassiSage A Machine Learning model made with AWS SageMaker and its Python SDK for Classification of HDFS Logs using Terraform for automation...
    程式設計 發佈於2024-11-07
  • 為什麼我的 Java 應用程式使用 GMT 而不是作業系統時區,如何修復它?
    為什麼我的 Java 應用程式使用 GMT 而不是作業系統時區,如何修復它?
    如何解決Java 中預設時區不正確的問題在某些情況下,Java 應用程式可能會遇到JVM 時區預設為GMT 的問題作業系統(OS) 定義的時區。這可能會導致日期和時間處理不正確。 在 Windows Server Enterprise (2007) 上執行的 Java 開發工具包 (JDK) 版本 ...
    程式設計 發佈於2024-11-07
  • 如何將 AWS SDK v2 與變數憑證結合使用?
    如何將 AWS SDK v2 與變數憑證結合使用?
    使用變數中的憑證執行 AWS SDK v2問:如何使用變數中的憑證執行 AWS SDK v2? 要利用 SDK v2 而不使用舊的 Session 類,您可以建立一個新客戶端並將您的憑證作為變數傳遞。考慮 IAM 服務的 getIAMClient 函數:func getIAMClient(ctx c...
    程式設計 發佈於2024-11-07
  • 為什麼我的 Java 專案找不到「tools.jar」?
    為什麼我的 Java 專案找不到「tools.jar」?
    Java專案中缺少Tools.jar在複雜的Java程式設計中,您可能會遇到“無法找到tools.jar”的神秘問題「錯誤。當您的專案缺少編譯和執行所必需的關鍵組件時,通常會出現此錯誤。診斷難題 檢查錯誤訊息後,您會發現系統正在運作無法在預期位置找到「tools.jar」檔案:C:\Program ...
    程式設計 發佈於2024-11-07
  • 我什麼時候應該在資料庫系統中使用 MySQL BLOB 進行檔案管理?
    我什麼時候應該在資料庫系統中使用 MySQL BLOB 進行檔案管理?
    何時利用MySQL BLOB 進行檔案管理在資料庫管理中,處理檔案儲存時,出現兩個主要選項:檔案系統儲存或MySQL BLOB(二進位大型)物件)存儲。每種方法都有其優點和局限性,但選擇最佳方法取決於應用程式的特定要求。 效能注意事項在某些情況下,使用 BLOB 可以顯著提高效能。當同時從多個伺服器...
    程式設計 發佈於2024-11-07
  • 如何在 Java 中轉義特殊字元以實現精確的正規表示式匹配?
    如何在 Java 中轉義特殊字元以實現精確的正規表示式匹配?
    轉義特殊字元以實現最佳正則表達式匹配使用正則表達式(regex) 匹配文本時,轉義某有些特殊字元至關重要,以確保它們被解釋為文字而不是元字元。在Java中,必須轉義的特殊字元包括:。 [ ] { } ( ) \ < > * - = ! ? ^ $ |但是,需要注意一些例外情況:方括號([]) 內只有...
    程式設計 發佈於2024-11-07
  • 用 Java 建立旋轉排序數組搜尋:了解樞軸搜尋和二分搜尋
    用 Java 建立旋轉排序數組搜尋:了解樞軸搜尋和二分搜尋
    什麼是旋轉排序數組? 考慮一個排序數組,例如: [1, 2, 3, 4, 5, 6] 現在,如果這個陣列在某個樞軸處旋轉,例如在索引 3 處,它將變成: [4, 5, 6, 1, 2, 3] 請注意,陣列仍然是排序的,但它被分成兩部分。我們的目標是有效地在此類數組中搜尋目標值。 ...
    程式設計 發佈於2024-11-07
  • 在 � 學習 Three.js
    在 � 學習 Three.js
    I had the chance to dive into some web development where I wanted to add interactive 3D elements that could move and react to certain triggers. Natura...
    程式設計 發佈於2024-11-07
  • 網站時間資料集
    網站時間資料集
    您好,我在kaggle上發現了一個網站使用時間的資料集,所以我想找到訪問頁面數與網站總時間之間的比率。 您可以在我的github中找到資料集和程式碼:https://github.com/victordalet/Kaggle_analysis/tree/feat/website_traffic ...
    程式設計 發佈於2024-11-07
  • 簡單異常範例
    簡單異常範例
    此範例顯示如何監控和捕捉異常。 嘗試存取陣列邊界以外的索引會產生 ArrayIndexOutOfBoundsException。 程式故意引發此異常並捕獲它。 要監視異常的程式碼放在 try 區塊內。 當發生異常時,拋出異常並被catch塊捕獲,結束try塊。 控制權不是「叫」來捕捉的,...
    程式設計 發佈於2024-11-07
  • 模板文字可以真正重複使用嗎?
    模板文字可以真正重複使用嗎?
    模板文字:復興重用ES6 中的模板文字經常被吹捧為強大的文本操作工具,但一個棘手的問題仍然存在:它們真的可以重用嗎? 無法實現的期望乍一看,模板文字似乎只在聲明時承諾動態替換。這就引出了一個問題:什麼是保持靜態的模板? 打破循環與流行的看法相反,模板文字可以使用函數通過運行時替換來重新煥發活力構造函...
    程式設計 發佈於2024-11-07
  • 在 Java 中使用 Fisher-Yates 演算法對陣列進行洗牌
    在 Java 中使用 Fisher-Yates 演算法對陣列進行洗牌
    介紹 在電腦科學領域,對元素數組或列表進行洗牌是一種常見的操作,可用於各種應用程序,從隨機化遊戲結果到分發牌組中的紙牌。為此目的最有效的演算法之一是 Fisher-Yates Shuffle,也稱為 Knuth Shuffle。該演算法確保數組的每個排列都有相同的可能性,這使其成為...
    程式設計 發佈於2024-11-07
  • 我作為全端開發人員的旅程:與 MERN Stack 一起成長的一年
    我作為全端開發人員的旅程:與 MERN Stack 一起成長的一年
    你好!我是 Shivaji Zirpe,一位充滿熱情的全端開發人員,專門研究 MERN 堆疊。在過去的一年裡,我深入研究了 Web 開發領域,廣泛使用了 React、Node.js、MongoDB 等。在這篇文章中,我想分享我的旅程、經歷以及我作為開發人員的成長過程。 ?我的經歷一...
    程式設計 發佈於2024-11-07
  • 什麼是 FHIR?
    什麼是 FHIR?
    介紹 與 fhir 相關的儲存庫清單 - Awesome-fhir 快速醫療保健互通性資源 FHIR 伺服器是一款強大的工具,徹底改變了醫療保健產業。 它充當存取和交換關鍵醫療資料的網關,實現不同系統和組織之間的無縫互通性。 什麼是 FHIR 伺服器? FHIR...
    程式設計 發佈於2024-11-07
  • 為什麼常數引用可以延長 C++ 中臨時變數的生命週期?
    為什麼常數引用可以延長 C++ 中臨時變數的生命週期?
    透過常數引用擴展右值生命週期在C 中,常量引用不僅充當不可變別名,還可以延長臨時變量的生命週期。為什麼 C 委員會決定要實現此行為? 此功能的一個基本原理是隱藏類別和函數的實作細節。考慮一個可以傳回行向量或列向量的矩陣類別。為了最佳化效能,類別可以選擇根據其行優先或列優先組織傳回內部值的參考。透過要...
    程式設計 發佈於2024-11-07

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3