Python datacompy 找出两个DataFrames不同的地方

简介: 本篇博客解决在两个几乎完全相同的DataFrame当中如何找出不相同的元素,并使用datacompy直观的显示出来。

本篇博客解决在两个几乎完全相同的DataFrame当中如何找出不相同的元素,并使用datacompy直观的显示出来。

x表:

06cc0b63f1df4cda887a2b291a4701be.png

让x1和x2都是x的副本,则此时x1和x2的值是相同:

x1=x.copy()
x2=x.copy()

将其中x2的一个数据赋值为2000

x2.loc['罗梓烜']['20220125']=2000
x1[x1==x2].head(25) # 如何对不相等的数据进行纠正

此时可以看到下图这个数据是NaN值,说明对于这个数据来说x1和x2是不相同的

afbc1758fdae413885da4881157412fb.png

x1[x1==x2].isnull().sum()

e9d88028c931424b81968c51e45a5e63.png

但是现在还是不能确定出有异常值(也就是不相等的值的那行数据),因此我们考虑使用datacompy

安装:

!pip install datacompy
import datacompy,pandas as pd,sys
compy=datacompy.Compare(x1,x2,on_index=True)
compy
print(compy.matches())
print(compy.report())

此时就可以很清晰的看到两个DataFrame当中不相同的值了:

2f6efcbfe88942479b52e1e3317932c8.png


相关文章
|
7月前
|
存储 索引 Python
请解释Python中的NumPy库以及它的主要用途。
【2月更文挑战第27天】【2月更文挑战第97篇】请解释Python中的NumPy库以及它的主要用途。
197 0
|
7月前
|
数据可视化 数据挖掘 API
请解释Python中的Seaborn库以及它的主要用途。
请解释Python中的Seaborn库以及它的主要用途。
292 0
|
7月前
|
JSON 缓存 安全
Python 的其他应用: 解释什么是 Python 的 pickle 模块?
Python 的其他应用: 解释什么是 Python 的 pickle 模块?
71 0
|
6月前
|
存储 机器学习/深度学习 缓存
一文弄懂Python字典的使用
Python是一门广泛应用于数据分析、机器学习等领域的语言,而字典作为Python中最常用的数据类型之一,也被广泛使用。本文将详细介绍Python字典的相关知识点,包括字典的基础用法、高级用法、原理、优缺点、性能评估、使用场景、小技巧等等。
95 4
|
7月前
|
机器学习/深度学习 数据采集 算法
请解释Python中的Sklearn库以及它的主要用途。
`Sklearn`是Python的顶级机器学习库,提供数据预处理、特征选择、分类回归、聚类、模型评估及参数调优等工具。它包含多种算法如SVM、决策树,并提供样例数据集便于实践。它是进行机器学习项目不可或缺的工具。
98 1
|
Python 容器
【Python基础】Python函数
【Python基础】Python函数
80 0
|
7月前
|
数据可视化 前端开发 Linux
请解释Python中的Matplotlib库以及它的主要用途。
【2月更文挑战第27天】【2月更文挑战第99篇】请解释Python中的Matplotlib库以及它的主要用途。
80 0
|
前端开发 Shell 索引
Python(二十二)python切片的相关概念总结
首先,要注意一件事,在python中,字符串,元组,列表的取值都可以使用下标来实现。 其实切片这个用法之前在看列表和元组的时候,提到过。 说白了其实就是根据索引获取元素。只是在python中,给他起了个名字叫切片。 一:切片操作语法 一个完整的切片表达式包含两个“:”,用于分隔三个参数(start_index、end_index、step)。当只有一个“:”时,默认第三个参数step=1;当一个“:”也没有时,start_index=end_index,表示切取start_index指定的那个元素。 切片操作基本表达式: css 复制代码 object[start_index:end_in
152 0
|
数据可视化 索引 Python
|
Python
C中处理Python的Numpy数组的代码范例
C中处理Python的Numpy数组的代码范例
71 0