python 完全匹配,python数据分析数据匹配

  python 完全匹配,python数据分析数据匹配

  平时我们经常会制作周报、月报这种超过操作相同的报表,我们可以使用大蟒的熊猫库对其进行自动化。这篇文章就演示了利用大蟒实现使用超过中的纵向查找函数函数,并将其脚本封装成可执行程序的扩展名可执行程序。

  写这段脚本的原因是因为我们部门的一个做渠道的同事不太会用纵向查找函数函数,所以我琢磨着将他要用到纵向查找函数的工作需求写成脚本供他使用。

  需求:要将B表中的"收入"字段的数据匹配到A表中去:

  表答:

  表A

  表B

  表B

  结果:

  结果

  脚本内容如下:

  进口熊猫作为螺纹中径

  表名=输入(请输入A表文件名:)

  表_路径=表_名称。xlsx

  工作表名称=输入(请输入A表中的表名称:)

  表_ a=PD。read _ excel(表格路径,工作表名称=工作表名称,转换器={ 订单号:str}).dropna(axis=1,how=all )

  表_ b _名称=输入(请输入B表文件名:)

  表_ b _路径=表_ b _名称。xlsx

  工作表_ b _名称=输入(请输入B表中的表名称:)

  表b=PD。read _ excel(table _ b _ path,sheet_name=sheet_b_name,converters={ 交易ID:str})

  table_b_2=table_b.groupby(交易ID’).收入100 . 000苏姆(1000 . 000)。重置索引()

  table _ c=table _ a . merge(right=table _ b _ 2,how=left ,left_on=订单号,right_on=交易ID’)

  table_c.to_excel(c.xlsx ,index=False)

  考虑到同事不会使用python,故将这段脚本封装成可执行可执行程序的扩展名文件,关于怎样将计算机编程语言代码封装打包成可执行的可执行程序的扩展名文件以及可能碰见的报错解决详见我之前的文章:将大蟒脚本打包封装成可执行程序的扩展名程序

  过程演示。可交换的图像格式

  但是上面的可执行程序的扩展名使用起来并不够直观、方便,故又利用图形界面制作了一个图像使用者界面界面:

  图像使用者界面界面。可交换的图像格式

  制作图像使用者界面界面的脚本如下:

  #!/usr/鲤鱼猫咪/python

  # -*-编码:utf-8 -*-

  来自tkinter导入*

  进口熊猫作为螺纹中径

  导入操作系统

  进口是

  window=Tk()

  window.title(数据匹配)

  window.geometry(300x400 )

  var1=StringVar()

  var2=StringVar()

  var3=StringVar()

  var4=StringVar()

  var5=StringVar()

  var6=StringVar()

  var7=StringVar()

  L1=标签(文本=请输入表A的名称:)

  L1.pack()

  e1=Entry(window,show=None,textvariable=var1)

  e1.pack()

  L2=标签(文本=请输入表A中表名称:)

  L2.pack()

  e2=Entry(window,show=None,textvariable=var2)

  e2.pack()

  L3=标签(文本=请输入表A中的身份列:)

  L3.pack()

  e3=条目(窗口,显示=无,文本变量=var3)

  e3.pack()

  L4=标签(text=请输入表B的名称:)

  L4.pack()

  e4=Entry(window,show=None,textvariable=var4)

  e4.pack()

  L5=标签(text=请输入表B中表名称:)

  L5.pack()

  e5=Entry(window,show=None,textvariable=var5)

  e5.pack()

  L6=标签(文本=请输入表B中的身份列:)

  L6.pack()

  e6=条目(窗口,显示=无,文本变量=var6)

  e6.pack()

  L7=标签(text=请输入要匹配的表B中的列名:)

  L7.pack()

  e7=Entry(window,show=None,textvariable=var7)

  e7.pack()

  极好的数据匹配():

  path= C:\ \ Users \ \ PS 2019 02 25 \ \ Desktop

  os.chdir(路径)

  table_a_path=e1.get()

  a_type=re.search(r([a-z]*).([a-z]*),table_a_path).第二组

  sheet_a_name=e2.get()

  A_id=e3.get()

  if a_type==xlsx :

  表_ A=PD。read _ excel(table _ A _ path,sheet_name=sheet_a_name,converters={A_id:str}).dropna(axis=1,how=all )

  否则:

  表_ A=PD。read _ CSV(table _ A _ path,sheet_name=sheet_a_name,converters={A_id: str}).dropna(axis=1,how=all )

  table_b_path=e4.get()

  b_type=re.search(r([a-z]*).([a-z]*),table_b_path).第二组

  sheet_b_name=e5.get()

  B_id=e6.get()

  target_col=e7.get()

  if b_type==xlsx :

  表B=PD。read _ excel(table _ B _ path,sheet_name=sheet_b_name,converters={B_id: str}).dropna(axis=1,how=all )

  否则:

  表B=PD。read _ CSV(table _ B _ path,sheet_name=sheet_b_name,converters={B_id: str}).dropna(axis=1,how=all )

  table _ B _ 2=table _ B . group by(B _ id)[target _ col].sum().重置索引()

  table _ c=table _ A . merge(right=table _ B _ 2,how=left ,left_on=A_id,right_on=B_id)

  table_c.to_excel(c.xlsx ,index=False)

  B=按钮(窗口,文本=匹配,宽度=15,高度=2,命令=数据_匹配)

  b .包()

  window.mainloop()

  学tkinter看活力冰棍老板的视频:做一个简单的窗户。

郑重声明:本文由网友发布,不代表盛行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数据
  • 留言与评论(共有 条评论)
       
    验证码: