DataComPy是一個比較兩個Pandas.DataFrame的第三方庫。它最初是用來替代SAS的Pandas DataFrames的比較程序的,它的功能比Pandas.DataFrame.equals(DataFrame)更多,如支持打印詳細的統計數據,並允許我們通過參數設置匹配的精確程度。同時將該功能擴展到了SparkDataframes,滿足數據集巨大時的比對需求。
DataComPy 安裝
我們在Windows10 Python3環境中使用pip進行安裝,安裝命令如下:
pip install datacompy
安裝過程如下:
演示數據集
我們利用source、target 兩個數據集,介紹如何使用datacompy 模塊實現數據集之間的比較,為了方便查看,其中紅色部分為兩個數據集的差異部分,如下圖:
DataComPy 使用
直接上代碼,如下。datacompy.Compare() 方法使用簡單,註釋比較清楚,就不多做介紹了。
通過compare.report() 方法,我們可以非常清晰的看到兩個數據集的差異,比如DataFrame 數據集概述,列、行比較結果概述以及詳細差異描述如下:
除此之外,compare 也提供了另外一些比較方便的方法,如下
執行上述代碼,輸出結果為:
最後,compare 也有一定的侷限性,在比較的數據集時需要數據加載到內存中,如果比對數據集非常大,這可能是一個限制。
閱讀更多 軟件測試開發技術棧 的文章