尝试比较两个Excel文件的内容并通过python保存差异

时间:2018-11-08 02:56:40

标签: excel pandas compare difference difflib

我有两个包含来自数据记录器的多行excel的excel文件,我需要将这两个文件与3个相似的列(aum,bnum,date,time)进行比较,但列持续时间不同,然后将差异保存到第三个Excel文件。

*** excel文件1:

anum            bnum duration   date     time
02473082424 0969755655  12  2018-08-04  10:53:04
02473082424 02435543470 17  2018-08-04  10:53:04
02473082424 01653559999 19  2018-08-04  10:53:06
02473082424 02437633476 63  2018-08-04  10:52:46
02473082424 02432262638 23  2018-08-04  10:53:26
02473082424 02435537928 40  2018-08-04  10:53:18
02473082424 0936467084  20  2018-08-04  10:53:42

*** excel文件2:

   anum       bnum   duration   date     time
    02473082424 0969755655  16  2018-08-04  10:53:04
    02473082424 02435543470 17  2018-08-04  10:53:04
    02473082424 01653559999 23  2018-08-04  10:53:06
    02473082424 02437633476 63  2018-08-04  10:52:46
    02473082424 02432262638 23  2018-08-04  10:53:26
    02473082424 02435537928 10  2018-08-04  10:53:18
    02473082424 0936467084  20  2018-08-04  10:53:42

1 个答案:

答案 0 :(得分:0)

您可以先使用pandas.read_excel读取两个excel文件 分为两个数据帧df1和df2然后:

df1.rename(columns={'duration':'duration1'},inplace=True)
df2.rename(columns={'duration':'duration2'},inplace=True)
df=df1.merge(df2)
df['duration']=df['duration2']-df['duration1']
writer = pd.ExcelWriter(excel_file_3)
df[['anum','bnum','duration','date','time']].to_excel(writer,'Sheet1')