精华内容
下载资源
问答
  • 【多excel匹配合并成为一张excel表

    千次阅读 2018-11-29 15:00:47
    想做一个【多excel匹配合并成为一张excel表】的自动化功能,人工匹配耗时耗力。 先废话: 做运维的,居然被资源统计搞得头疼眼瞎的,也是日了狗了。遂搞了个这个,化个人一下午都搞不完的东西为一小时之内,考虑...

    想做一个【多excel匹配合并成为一张excel表】的自动化功能,人工匹配耗时耗力。

    先废话:

    做运维的,居然被资源统计搞得头疼眼瞎的,也是日了狗了。遂搞了个这个,化两个人一下午都搞不完的东西为一小时之内,考虑到数据出来了还要修改啥的,1h足够了。ok,进入正题。

    工具:Jupiter notebook

    需要的包:pandas

    以下为正文:

    1、导包

    import pandas as pd

    2、读取表格:

    df = pd.read_excel("虚拟机资源统计报表.xls",sheet_name='xx表')

    df为主表,大多数字段(虚拟机名称、CPU利用率等)里面都有,缺少的字段(申请时间)在df_表.

    df_表为补充表。我对补充表做了数据处理:将多个标签合并为一个,其时间由新->旧。。。。。。需要注意的是,当匹配多个结果,我选择查询到的第一个结果,即最新的结果

    3、创建自己的表格mydf,用来保存最终结果

    # 把需要的字段拿出来
    mydf = pd.DataFrame(columns = ["虚拟机名称", "CPU配置(核)", "CPU使用率(%)", "子系统", "申请时间"]) 

    4、把主表df能用的数据先考到最终表mydf中

    mydf["虚拟机名称"]=df['虚拟机名称']
    mydf["CPU配置(核)"]=df['CPU配置(核)']
    mydf["CPU使用率(%)"]=df['CPU使用率(%)']
    mydf["子系统"]=df['子系统']

    5、合并表格

    # 合并两张表,为主表缺少的字段“申请时间”字段赋值
    for i in mydf["虚拟机名称"]:
        # a类型为Series,Series类型包括index和values两部分
        a=df_["虚机申请时间(必填)"][df_["虚机名称"] == i]
        b=a.values #返回一个多维数组numpy对象
        if(len(b)>0):
            mydf["申请时间"][mydf['虚拟机名称'] == i] = b[0]
        else:
            mydf["申请时间"][mydf['虚拟机名称'] == i] = "" #没查到的都置空

    6、数据导出

    mydf.to_excel("mydf.xls") #导出数据到Excel文件

    7、结果很惊喜~

     

    展开全文
  • 昨天,我在python利用pandas对两张excel合并(二)一文中对两张表按列merge时on的用法。今天分享一下,merge传参时,另一个参数how的方法。在学完how的用法之后,对两张表合并学习基本上就结束了。 1、如下图所...

    昨天,我在python利用pandas对两张excel表合并(二)一文中对两张表按列merge时on的用法。今天分享一下,merge传参时,另一个参数how的方法。在学完how的用法之后,对两张表的合并学习基本上就结束了。
    1、如下图所示:
    在这里插入图片描述
    左表中name分别是:bob, millor, jiken。右表中name有bob, millor, lucy。左表有jiken而没有lucy, 右表有lucy而没有jiken。
    how参数有4个值{‘inner’, ‘outer’, ‘right’,‘left’}听起来可能会让人觉得繁琐,看完下面的例子用法很快就会明白。
    2、代码:

    # 当how为inner时,同时,how的默认值也是inner
    >>> import pandas as pd
    >>> df1 = pd.read_excel(r'D:/myExcel/1.xlsx', 'Sheet1')
    >>> df2 = pd.read_excel(r'D:/myExcel/2.xlsx', 'Sheet1')
        # df1就是上述左表,df2就是上图中的右表
    >>> df = pd.merge(df1, df2, how='inner', on=['name'])
    	# 有结果可知,当how为inner时,做左右表连接实际取的是name的交集,即两表
    	#name中的共同部分
    >>> df
         name  math  Chinese
    0     bob    23       21
    1  millor    32       19
    
    # 当how为outer时,取的是name的并集,无值的补为NAN,空值的意思
    >>> df = pd.merge(df1, df2, how='outer', on=['name'])
    >>> df
         name  math  Chinese
    0     bob  23.0     21.0
    1  millor  32.0     19.0
    2   jiken  45.0      NaN
    3    lucy   NaN     86.0
    
    # 当how为left时,即以左表的name的值为标准,左表的name必须保留,右表的name中有值
    # 而左表没有则删除
    >>> df = pd.merge(df1, df2, how='left', on=['name'])
       # 结果有jiken却没有lucy
    >>> df
         name  math  Chinese
    0     bob    23     21.0
    1  millor    32     19.0
    2   jiken    45      NaN
    
    # 当how为right时,保留右表而不保留左表中的不同部分 
    >>> df = pd.merge(df1, df2, how='right', on=['name'])
     # 结果保留了lucy却删除了jiken
    >>> df
         name  math  Chinese
    0     bob  23.0       21
    1  millor  32.0       19
    2    lucy   NaN       86
    

    通过对how的用法解释,两表之间的连接已经非常清楚了。如果想有更深入的了解,可以下载pandas的官方文档。或者在我的公众号:python小工具。回复python获取。虽然是英文的,但并不难理解,建议下载。
    哈哈,以上就是对两表连接的介绍。明天我将开始介绍多表之间的cancat和merge。如果有兴趣,欢迎关注:python小工具。让我们一起努力,让办公变得更方便。
    在这里插入图片描述

    展开全文
  • 合并主键相同的两张excel表

    千次阅读 2019-06-27 22:56:56
    合并后: 将2的数据插入1中,相当于左连接 1、在1中添加要插入的列名(本例为score) 选中这一列下的一个单元格 选择公式->插入函数->VLOOKUP->确定 2、lookup_value选择1的主键列(本例...

    表1:

    表2:

    合并后:

    将表2的数据插入表1中,相当于左连接

    1、在表1中添加要插入的列名(本例为score)

    选中这一列下的一个单元格

    选择公式->插入函数->VLOOKUP->确定

    2、lookup_value选择表1的主键列(本例为ID)

    3、table_array选择表2中主键列(与表1主键相同的列)以及要插入的列

     

    4、col_index_num选择插入的列在表2中的位置,本例中score在表2中为第2列,col_index_num为2

    5、range_lookup精确匹配为0,大致匹配为1,本例精确匹配,range_lookup为0

    6、点确定,往下拖此单元格,或者Ctrl+shift+下箭头

     

    或者将excel表中数据导入数据库,用SQL语句连接:

    create table test3 select test1.id,name,score from test1 left outer join test2 on test1.id = test2.id;

     

     

    展开全文
  • 昨天,利用pandas中的concat函数进行了两张表的行合并。今天,看一下列的合并,如下图所示: 预期结果如下: 1、代码实现如下: import pandas as pd # 读取表1 df1 = pd.read_excel(r'D:/myExcel/1.xlsx', 'Sheet1...

    昨天,利用pandas中的concat函数进行了两张表的行合并。今天,看一下列的合并,如下图所示:在这里插入图片描述
    预期结果如下:
    在这里插入图片描述
    1、代码实现如下:

    import pandas as pd
    # 读取表1
    df1 = pd.read_excel(r'D:/myExcel/1.xlsx', 'Sheet1')
    # 读取表2
    df2 = pd.read_excel(r'D:/myExcel/2.xlsx', 'Sheet1')
    # 进行合并,重点看on参数,on参数指的是依据哪一列进行合并,当然也可以添加两列
    # 值得注意的是,此处无论依据哪一列或者哪几列进行合并,均需要尽量确保此列或者
    # 此几列中的值能够是唯一的,否则容易出错
    df = pd.merge(df1, df2, on=['name'])
    df.to_excel(r'D:/myExcel/res.xlsx', 'Sheet1', index=None)
    

    2、下面看一下,当on中列举的值不是唯一时的情况
    在这里插入图片描述
    如上图所示,name中出现了两个bob,运行同样的程序代码,结果如下图所示:
    拼接结果出现了4行有关bob的记录。这是因为on拼接实质是依据数学上的笛卡尔积的拼接结果。需要强调的事尽量满足作为拼接条件的列中的值或者某几列的值能够确定唯一一个值。
    在这里插入图片描述
    下面,我把官方对on参数的说明附在文章最后,可以认真阅读一下:
    on : label or list
    Column or index level names to join on. These must be found in both
    DataFrames. If on is None and not merging on indexes then this defaults
    to the intersection of the columns in both DataFrames

    哈哈,今天分享到这,明天我将就merge中的left_on, right_on,以及on参数三个参数的区别分享一下。如果有兴趣,可以关注一下我的微信公众号:python小工具。让我们一起让办公变得更方便吧
    在这里插入图片描述

    展开全文
  • pandas实现excel的sheet合并到另一张中 import pandas as pd def combine_excel(file_path1,file_path2,target_path): #文件读入 data1 = pd.read_excel(file_path1) data2 = pd.read_excel(file_path2) ...
  • 工作中,我们会经常遇到需要对表中记录进行合并的情况,如下图所示: 需要得到如下结果: 下面我将通过几行python代码实现上述功能: import pandas as pd # 读取1(参数分别为1工作薄名称及其目录,2哪张表) ...
  • C# 两张Excel 合并到新建的一张Excel

    千次阅读 2010-12-09 10:21:00
    一、调用代码: private void simpleButton1_Click(object sender, EventArgs e) ... //M为表格宽度标志(Excel中的第M列为最后一列),3为表头高度  MergeExcel.DoMerge(new string[]<br
  • 当你有两张或者多张表的时候,有相同的字段比如学号,也有不同的字段,比如a有年龄,b有出生日期,你需要将这些字段融合的时候,并且中的数据非常多,就可以用到这个函数,很快。 a 学号 姓名 ...
  • 将要合并excel表全部...执行vba.xls里面的“表合并”宏,即可完成合并和数据行数统计,结果在新建的excel文件中的最后两张sheet中。 (统计行数的数组设为200维,若有更多张表,可进自行修改arr和str_arr数组维数)
  • 两张Excel工作薄,每个工作薄有Sheet1,Sheet2。 如下图所示 实现目标如下图所示: 2、代码如下图所示: import pandas as pd # 定义函数实现该功能 def sheet_concat(sheet_name): # 读入excel dfs_1 = pd....
  • Excel表中的数据合并

    千次阅读 2016-10-28 10:53:55
    主要用到三个函数: 1,ISERROR(判断,真值,错值) 2,INDEX(reference,Row_num,column_num,area_num) 返回引用中指定单元格区域的引用。  ...现在有两张表,格式如下图: 现在要是将图2的OPENI
  • 订单表头,索引值为A列,表格大概...</p><p><img src="https://biwen-static.csdn.net/1596181248d2b5ca33bd970f64a6301fa75ae2eb22.png"></p><p><br></p><p>产品表头:索引也是A列:</p><p> </p><p><img src=...
  • 本人access小白,想问问大佬们,当使用access对excel表格进行批量导入合并的时候 ,如何检查一张是否被导入了次。 举个例子,现在有高一高二高三三个年级的学生数据,当使用sql进行批量导入这些表格时,...
  • 今在做EXCEL时遇两问题,现和大家分享如下: 1、如何将表中两列值合并到一列,并按照一定的分隔符进行分割,公式如下:  假如:要将F和G的值 合并到H列...2、有两张表,根据表中相同的编号将成绩复制到另一张表中:
  • Excel表格合并

    2019-09-03 15:57:02
    在日常工作过程中,我们有可能需要把多个Excel工作簿的内容汇总到一张Excel工作中。如果通过复制粘贴的方式也并不是不可行,只是会浪费大量的时间和人力。在这样的情况下,我们一起讨论一种可以比较方便和快捷的...
  • 1.将EXCEL中不需要的列删除 2.将EXCEL留下列的标题栏命名为数据库表的字段名 3.替换掉文件中的#REF!...5.将两张表的相关字段合并 merge into asset_rtu using asset_excel on asset_rtu.description=ass...
  • 使用python合并excel

    2019-10-02 18:57:56
    当工作碰到需要将几个excel合并时,比如一个,收集每个人的个人信息,陆续收回来就是十几甚至几十张表,少了还好解决,但是很多的话就不能一个一个去复制了,这时候就想到了python,Python大法好啊。短短100行...
  • Step2:选择多重合并计算数据区域,选择表格区域, Step3:完成后,出现一个数据透视,双击右下角总计单元格,在新的sheet里面产生一张一维。 如果双击不出,则右击-数据透视选项-勾选启用显示明细数据 ...
  • 一 问题描述最近朋友在工作中遇到这样一个问题,她每天都要处理如下一批 Excel 表格:每个表格的都只有一个 sheet,表格的前行为表格标题及表头,表格的最后一行是相关人员签字。最终目标是将每个表格的内容合并到...
  • Python 将两表根据相同名称进行合并

    千次阅读 2020-04-08 23:20:02
    如下图所示,存在着两张拥有相同地区名称的1和2 要将2 中的值2,添加到1中,得到三的效果 代码如下: import pandas as pd from pandas.core.frame import DataFrame a = r'I:\1.xlsx' data1 = pd....
  • 但是,我们在进行数据分析的时候可能往往需要对这些数据进行整体处理,这个时候很多小伙伴可能会打开每张表一个一个复制粘贴!!! 为了解决这一低效的操作,我们这里介绍种方案,让大家可以一键秒解合并Excel表格...
  • Excel个表格关联数据

    万次阅读 2017-03-06 09:59:48
    Excel将两个表格关联数据合并 有时候我们需要将两个数据表,合并成为一张数据表,根据两张表中,有一个相同定义的列进行合并。 此时,有两个sheet数据表。 数据表1 数据表2 两种表格中都有序列化id这个列,此时...
  • 本期想分享一下:将分散于一张Excel的多个Sheets中的数据,合并到一张Sheet或数据库中的...需要想把Excel两张Sheets数据关联,写入到Excel的一张Sheet或数据库中。 步骤: 1.建立Sheet1、Sheet2的数据源;...
  • oracle数据合并

    千次阅读 2016-10-31 14:27:32
    如何将两张表进行合并。  业务场景:  mis做了基础资料的更新,更新内容包括对历史数据的修改和新增一部分数据。他们是把这部分数据导出来一份excel,然后我把excel的内容分两次导入到新建的测试表中, 然后把两张...
  • 分割,并且转为excel文件后可能同一个名称的列不在同一列,比如同样是Paid Price名称的列,一个文件在AL列,一个在AO列,如果单纯的读取所有文件并合并的话就会导致数据错列排放,在网上找了很多教程并没有现成的...
  • 其实比较简单,在leetcode里应该是最简单的初级题目,但是考虑到时间复杂度,如果用层循环遍历的话,数据量大起来效率会很低,所以我使用了Pandas里面的筛选功能,基本在4秒内就完成了整个数据处理工作(数据量...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 156
精华内容 62
关键字:

excel合并两张表