pandas求兩個表格不相交的集合方法
Hi,好久不見,我還是那顆翻滾的老鼠屎。處理數(shù)據時想求兩個表格求不相交的部分,或許是對知識的匱乏限制了我的想象力,并未找到直接求的方法,在這里介紹老鼠屎技己使用的方法,希望對讀者會有幫助。

陰影部分為所要求的部分(但是前提是A、B兩個集合都是無重復內容的集合)
首先先造兩個DataFrame來做示例。
import pandas as pd
a0={"number":range(10),"letter":["a","a","b","b","c","f","f","e","h","w"]}
a=pd.DataFrame(a0)
b0={"number":range(15),"letter":["b","a","t","b","r","f","g","e","j","w","t","h","i","y","u"]}
b=pd.DataFrame(b0)
看一下兩個DataFrame的樣子

關于差集,我們是要去除兩個DataFrame中公共的部分,因此我的想法是:
(1)先將兩個DataFrame融合為一個DataFrame;
(2)去掉當中公共的部分(使用drop_duplicates去重)。
下面來看一下代碼:
c=a.append(b) c.drop_duplicates(keep=False,inplace=True) c.reset_index()
這里想要說明的是,drop_duplicates當中的參數(shù)keep=False,意為重復項全部刪除,它還有keep="first"與keep="last",分別對應在有多項重復時,保留第一項(或最后一項)。具體可參考官方文檔。
得到的效果是如下所示。雖然過程很簡單,但是很好用。

同樣的道理可用來求差集,在此不做贅述。
以上這篇pandas求兩個表格不相交的集合方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
python異步的ASGI與Fast Api實現(xiàn)
本文主要介紹了python異步的ASGI與Fast Api實現(xiàn),文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧2021-07-07
python encrypt 實現(xiàn)AES加密的實例詳解
在本篇文章里小編給大家分享的是關于python encrypt 實現(xiàn)AES加密的實例內容,有興趣的朋友們可以參考下。2020-02-02
Python實現(xiàn)監(jiān)視程序的內存使用情況
我們使用Python和它的數(shù)據處理庫套件進行大量數(shù)據處理時候,可能使用了大量的計算資源,那么如何監(jiān)視程序的內存使用情況就顯得尤為重要,下面我們就來了解一下具體實現(xiàn)方法吧2023-12-12

