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库以及它的主要用途。
198 0
|
7月前
|
JSON 缓存 安全
Python 的其他应用: 解释什么是 Python 的 pickle 模块?
Python 的其他应用: 解释什么是 Python 的 pickle 模块?
71 0
|
3月前
|
数据采集 存储 数据挖掘
使用Python读取Excel数据
本文介绍了如何使用Python的`pandas`库读取和操作Excel文件。首先,需要安装`pandas`和`openpyxl`库。接着,通过`read_excel`函数读取Excel数据,并展示了读取特定工作表、查看数据以及计算平均值等操作。此外,还介绍了选择特定列、筛选数据和数据清洗等常用操作。`pandas`是一个强大且易用的工具,适用于日常数据处理工作。
|
7月前
|
数据可视化 前端开发 Linux
请解释Python中的Matplotlib库以及它的主要用途。
【2月更文挑战第27天】【2月更文挑战第99篇】请解释Python中的Matplotlib库以及它的主要用途。
82 0
|
7月前
|
存储 数据采集 数据可视化
Python如何读取Excel中的数据?
Python如何读取Excel中的数据?
188 0
|
7月前
|
数据采集 数据可视化 数据挖掘
Python小姿势 - Python操作Excel表格数据
Python小姿势 - Python操作Excel表格数据
|
Shell Python
Python(三十五)python文件操作(3)
5:文件指针操作函数 tell() seek() (1):tell()判断文件指针当前所处的位置 lua 复制代码 f = open("log.txt", 'r', encoding="utf-8") print(f.tell()) print(f.read(10)) print(f.tell()) 输出: arduino 复制代码 0 https://gu 10 (2):seek()将文件指针移动至指定位置 语法: bash 复制代码 file.seek(offset[, whence]) 其中,各个参数的含义如下: file:表示文件对象; whence:作为可选参数,用于指定文
63 1
|
缓存 Shell Python
Python(三十五)python文件操作(2)
5:文件指针操作函数 tell() seek() (1):tell()判断文件指针当前所处的位置 lua 复制代码 f = open("log.txt", 'r', encoding="utf-8") print(f.tell()) print(f.read(10)) print(f.tell()) 输出: arduino 复制代码 0 https://gu 10 (2):seek()将文件指针移动至指定位置 语法: bash 复制代码 file.seek(offset[, whence]) 其中,各个参数的含义如下: file:表示文件对象; whence:作为可选参数,用于指定文
61 1
|
前端开发 Shell PHP
Python(二十七)python raise语法!
Python可以使用raise手动抛出异常。 看到菜鸟教程里边对 raise 的这个定义的时候,我有点迷茫,我在极力的去避免异常出现,我为什么还要手动抛出异常呢? 1:raise 语句的基本语法格式: raise [exceptionName [(reason)]] 2:基本使用方法 (1):直接一个raise抛出异常 python 复制代码 try: i = 1 while(i < 10): raise print(i) i += 1 except: print('raise 手动抛出异常') 输出: bas
81 1
|
Linux Shell Python
Python(三十五)python文件操作(1)
5:文件指针操作函数 tell() seek() (1):tell()判断文件指针当前所处的位置 lua 复制代码 f = open("log.txt", 'r', encoding="utf-8") print(f.tell()) print(f.read(10)) print(f.tell()) 输出: arduino 复制代码 0 https://gu 10 (2):seek()将文件指针移动至指定位置 语法: bash 复制代码 file.seek(offset[, whence]) 其中,各个参数的含义如下: file:表示文件对象; whence:作为可选参数,用于指定文
73 0

热门文章

最新文章