我正在使用Python 3.7,我想比较两个Excel文件,它们具有相同的列(140列),但行数不同,我在网站上看了看,但我没有找到解决方案!
下面是一个示例:
df1 (old report) :
id qte d1 d2
A 10 23 35
B 43 63 63
C 15 61 62
df2 (new report) :
id qte d1 d2
A 20 23 35
C 15 61 62
E 38 62 16
F 63 20 51
结果应该是:
- 修改行必须为黄色,修改值必须为红色
- 绿色的新行
- 删除的行用红色表示
id qte d1 d2
A 20 23 35
C 15 61 62
B类43 63 63
东38 62 16
F 63 20 51
代码:
import pandas as pd
import numpy as np
df1= pd.read_excel(r'C .....\data novembre.xlsx','Sheet1',na_values=['NA'])
df2= pd.read_excel(r'C.....\data decembre.xlsx','Sheet1',na_values=['NA'])
merged_data=df1.merge(df2, left_on = 'id', right_on = 'id', how = 'outer')
加入数据虽然不是我想要的!
我刚刚开始学习Python,所以我真的需要帮助!
1条答案
按热度按时间iq3niunx1#
一个excel diff可以很快变成一个时髦的野兽,但是我们应该能够用一些
concats
和boolean语句来做到这一点。假设你的数组名为
df1, df2
如果你不介意把所有的数据类型都转换成字符串的话,那么这是可行的。我不推荐它,但是,使用一个事实或缓慢变化的维度模式来保存这样的数据,你会感谢你自己的未来。