用pandas查询两天EXCEL数据的变化并输出新的表格

比较两个表格的数据,并输出EXCEL。

import pandas as pd
import datetime
import numpy as np
from pandas import DataFrame
df1 = pd.read_excel('区分任务-5G建设 2022-4-14.xlsx',sheet_name='表2.1 5G网管设备清单-ESN去重')
df1 = df1[["ESN","区县","小区名称","分类","验收情况","开通类型\n(真实开通含在线、故障,临时开通)","匹配立项名"]]
df1.head()
df3 = df1.loc[df1['开通类型\n(真实开通含在线、故障,临时开通)'] == '在线']
df2 = pd.read_excel('区分任务-5G建设 2022-4-15.xlsx',sheet_name='表2.1 5G网管设备清单-ESN去重')
df2 = df2[["ESN","区县","小区名称","分类","验收情况","开通类型\n(真实开通含在线、故障,临时开通)","匹配立项名"]]
df2.head()
df4 = df2.loc[df2['开通类型\n(真实开通含在线、故障,临时开通)'] == '在线']
list1 = df3['ESN'].tolist()
list2 = df4['ESN'].tolist()
new_list = []
for x in list2:
    if x not in list1:
        #print(x)
        new_list.append([x])
    else:
        pass
new_list_1 = []
for y in list1:
    if y not in list2:
        #print(x)
        new_list_1.append([y])
    else:
        pass
def deal():
    today = str(datetime.date.today())
    df5 = pd.DataFrame(new_list, columns=['ESN'])
    #df5.to_excel('{}数据增加.xlsx'.format(today),index=False)
    df5.head()
    to_df = df5.merge(df2, on='ESN', how='left')
    #with pd.ExcelWriter('{}数据增加1.xlsx'.format(today)) as writer:
        #to_df.to_excel(writer, index=False)
    df6 = pd.DataFrame(new_list_1, columns=['ESN'])
    df6.head()
    #df6.to_excel('{}数据减少.xlsx'.format(today), index=False)
    to_df1 = df6.merge(df1, on='ESN', how='left')
    with pd.ExcelWriter('{}数据变化.xlsx'.format(today)) as writer:
        to_df.to_excel(writer, sheet_name='数据增加',index=False)
        to_df1.to_excel(writer, sheet_name='数据减少',index=False)
if  __name__ == '__main__':
    deal()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值