对比excel和python数据分析工具区别,python操作excel库对比

  对比excel和python数据分析工具区别,python操作excel库对比

  本文主要介绍一个基于Python的比较Excel的小工具,结合循环比较组合列(主键比较列)和示例代码,非常详细的介绍给大家。感兴趣的朋友可以跟随边肖去看一看。

  00-1010 1.参数2。效果三。目的实现3360设计一个应用程序GUI来比较两个Excel文件。

  思考

  

目录

  一个ODS(旧数据)和一个DWH(新数据)在同一个excel文件的两个表页中生成。设计两个主键。输入主键1和主键2(默认情况下,新旧文件的列名相同)

  

1.参数

  生成的文件数据量相同,每个字段的前10个数据不一样,双方的前10个数据不一样,排除不一样的数据,每个字段的前10个数据不一样。

  

2.效果

  循环比较组合列(主键比较列)pandas处理差异数据,openpyxl处理生成的工作表的数据格式。(先生成数据,再调整格式)配置

  进口熊猫作为pd

  从openpyxl导入load_workbook

  #选择文件路径

  path=r c : \ Users \ small classmate \ desktop \ migration _ data _ compari \ comparison file . xls xls # input(选择文件路径3360 )

  TargetPath=rC:\Users\小管同学\ desktop \ migration _ data _ comparison _ tool \ target file \ comparison result . xlsx

  data _ ODS=PD . read _ excel(r c : \ users \ classmates \ desktop \ migration _ data _ comparison _ tool \ comparison file . xls ,sheet _ name= ods )

  data _ dwh=PD . read _ excel(r c : \ users \ students in small tube \ desktop \ migration _ data _ comparison _ tool \ comparison file . xls ,sheet _ name= dwh )

  #选择主键

  Primarykey=员工编号 #input(选择主键13360 )

  主键

  #员工编号

  一.数据量

  输出表1-数据量

  Write _ to _ excel _ data volume (data,targetpath) : # cor _ df是要保存的数据帧。

  writer=PD . excelwriter(target path,engine= xlsxwriter) #此处使用

  Data.to _ excel (writer,sheet _ name= sheet1 ,encoding= UTF8 ,header=false,startcol=0,startrow=2) #从第二行开始dataframe的数据。

  workbook=writer.book

  1=workbook.add _ format ({#先打包样式,再赋值。

  Bold: True,# font bold

  Text_wrap: True,#换行?

  Valign 3360 底部,#垂直对齐

  对齐 3360 中心,#水平对齐

  FG _ fg_color: #C5D9F1 ,# ,#单元格背景色

  Border 3360 1,# border

  })

  writer _ sheet=writer . sheets[ sheet 1 ]

  #设置宽度

  writer _ sheet . set _ column( a : I ,16)

  writer _ sheet . set _ column( c : c ,30)

  Writer _ sheet.merge _ range (0,0,0,2,比较结果,格式1)

  Writer _ sheet.merge _ range (4,2,4,0,数据量差异,format1)

  writer_sheet.write(1,0,,format1)

  writer_sheet.write(1,1, ODS ,format1)

  writer_sheet.w

  rite(1,2,DWH,format1)

   writer.save()

   writer.close()

  DataFrame_DataVolume=pd.DataFrame([[DATA_ODS.shape[0]],[DATA_DWH.shape[0]]]).T

  DataFrame_DataVolume.columns =["ODS","DWH"]

  DataFrame_DataVolume.index=["数据量"]

  DataFrame_DataVolume

  #writeFileDataVolume(DataFrame_DataVolume,TargetPath)

  write_to_excel_DataVolume(DataFrame_DataVolume,TargetPath)

  

  

  输出表格2–数据量差异合同

  

if DATA_ODS.shape[0]==DATA_DWH.shape[0]:

   pass

  else:

   DATA_ODS_Primarykey=pd.DataFrame(DATA_ODS[Primarykey])

   DATA_DWH_Primarykey=pd.DataFrame(DATA_DWH[Primarykey])

   df_union = pd.concat([DATA_ODS_Primarykey,DATA_DWH_Primarykey])

   # 实现1

   df_diff_ODS = df_union.append(DATA_ODS_Primarykey).drop_duplicates(subset=df_union.columns.to_list(), keep=False)

   df_diff_DWH = df_union.append(DATA_DWH_Primarykey).drop_duplicates(subset=df_union.columns.to_list(), keep=False)

   #DWH多的合同

   df_diff_ODS

   #DWH少的合同

   df_diff_DWH

   df_diff_DWH_Data=[]

   df_diff_ODS_Data=[]

   for i in df_diff_ODS.head(10).values.tolist():

   for n in i:

   df_diff_ODS_Data.append(n)

   for i in df_diff_DWH.head(10).values.tolist():

   df_diff_DWH_Data.append(n)

   while True:

   if len(df_diff_DWH_Data)>len(df_diff_ODS_Data):

   df_diff_ODS_Data.append("-")

   elif len(df_diff_DWH_Data)< len(df_diff_ODS_Data):

   df_diff_DWH_Data.append("-")

   elif len(df_diff_DWH_Data)== len(df_diff_ODS_Data):

   break

   DataFrame_DataVolume_Count_result=pd.DataFrame(df_diff_DWH_Data,df_diff_ODS_Data).reset_index()

   DataFrame_DataVolume_Count_result.columns=[DWH多的合同,DWH少的的合同]

   DataFrame_DataVolume_Count_result=DataFrame_DataVolume_Count_result.reset_index()

   DataFrame_DataVolume_Count_result.columns=[序号,DWH多的合同,DWH少的的合同]

  DataFrame_DataVolume_Count_result

  from openpyxl import load_workbook

  def write_to_excel_Count_result(Data,TargetPath):

   df_Old = pd.DataFrame(pd.read_excel(TargetPath)) #读取原数据文件和表

   writer = pd.ExcelWriter(TargetPath,engine=openpyxl)

   book=load_workbook(TargetPath)

   writer.book = book

   writer.sheets = dict((ws.title, ws) for ws in book.worksheets)

   df_rows = df_Old.shape[0] #获取原数据的行数

   Data.to_excel(writer,startrow=df_rows+1, index=False,startcol=0,header=True)#将数据写入excel中的aa表,从第一个空行开始写

   writer.save()#保存

  write_to_excel_Count_result(DataFrame_DataVolume_Count_result,TargetPath)

  

  

  到此这篇关于基于Python实现对比Excel的小工具【实现中】的文章就介绍到这了,更多相关Python对比Excel的小工具内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 2020年高考成绩分布表,2020年高考成绩统计,数据分析2020年全国各省高考成绩分布情况
  • ,,python实现数据分析与建模
  • python3 数据分析,python数据分析课堂
  • 《数据思维》,数据分析的思维导图
  • python数据分析就业方向,python数据分析毕业论文
  • python数据分析数据清洗,python中数据清洗
  • 基于Python的数据可视化,python数据分析及可视化处理的第三方库
  • 利用python进行数据分析豆瓣,python数据分析基础和利用python进行数据分析
  • python数据分析数据清洗,用python进行数据清洗
  • python对excel表格数据的统计和分析,python进行excel数据分析
  • 从零开始学Python数据分析与挖掘,自学python数据分析
  • python数据分析结构思维导图,python组合数据类型思维导图
  • 关联规则分析案例,关联规则数据分析题,关联规则的实际案例数据
  • 数据分析与商业数据分析,120个Excel商业数据分析实战案例
  • python数据分析excel读写,python 读取excel数据
  • 留言与评论(共有 条评论)
       
    验证码: