繁体   English   中英

比较两个数据帧 pandas 并获得差异并完成

[英]comparing two dataframes pandas and getting differences and complete

df1:
Date       Fruit  Num  Color 
2013-11-24 Banana 22.1 Yellow
2013-11-24 Orange  8.6 Orange
2013-11-24 Apple   7.6 Green
2013-11-24 Celery 10.2 Green
2013-11-24 strawberry 15.2 black

df2:
Date       Fruit  Num  Color 
2013-11-24 Banana 22.1 Yellow
2013-11-24 Orange  8.6 Orange
2013-11-24 Apple   7.6 Green
2013-11-24 Celery 10.2 Green
2013-11-25 Apple  22.1 Red
2013-11-25 Orange  8.6 Orange

result
df1:
2013-11-24 Banana 22.1 Yellow
2013-11-24 Orange  8.6 Orange
2013-11-24 Apple   7.6 Green
2013-11-24 Celery 10.2 Green
**2013-11-25 Apple  22.1 Red**
**2013-11-25 Orange  8.6 Orange**
2013-11-24 strawberry 15.2 black

我想要做的是比较这两个图像并找出 df2 中的哪些行不在 df1 中。 我想比较日期(索引),然后将差异放在 df1 中以相同的顺序

您可以加入两个数据集,然后删除重复项:

df2.append(df1).drop_duplicates()

Output:

         Date       Fruit   Num   Color
0  2013-11-24      Banana  22.1  Yellow
1  2013-11-24      Orange   8.6  Orange
2  2013-11-24       Apple   7.6   Green
3  2013-11-24      Celery  10.2   Green
4  2013-11-25       Apple  22.1     Red
5  2013-11-25      Orange   8.6  Orange
4  2013-11-24  strawberry  15.2   black

有时在使用不同的 pandas 数据帧时,您可能需要获取两个数据帧之间“不同”的数据(即,比较两个 pandas 数据帧并获取差异)。 这似乎是一个简单的问题,但显然它对于许多人来说仍然是一个流行的“问题”,并且是我在 stackoverflow 上最受欢迎的问题。

https://pythondata.com/quick-tip-comparing-two-pandas-dataframes-and-getting-the-differences/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM