精华内容
下载资源
问答
  • 2019-03-29 12:12:56
    
    import pandas as pd
    import os
    path='C:/Users/Administrator/Downloads/重复/嘿嘿/'
    list1=os.listdir(path)
    
    data1=pd.DataFrame()
    for i in list1:
        data=pd.read_csv(path+i, skiprows=[0, 1, 2, 3, 4])  #skiprows固定跳前五行
        data1=pd.concat([data1,data])
    data1.to_excel('C:/Users/Administrator/Downloads/重复/嘿嘿/合并数据.xlsx')
    
    更多相关内容
  • location = "H:/ftp合并/" # 你需要合并该目录下excel文件的指定的文件夹 date = time.strftime("%Y%m%d") # 不需要,笔者在这里使用此参数作为合并后的excel文件名称 header = ["订单号","燃气编号","产品名称
    import glob # 同下
    from numpy import * #请提前在CMD下安装完毕,pip install numppy
    import xlrd # 同上
    import xlwt # 同上
    import time
    location = "H:/ftp合并/" # 你需要合并该目录下excel文件的指定的文件夹
    date = time.strftime("%Y%m%d") # 不需要,笔者在这里使用此参数作为合并后的excel文件名称
    header = ["订单号","燃气编号","产品名称","保险期限","总保费","保单号","投保地址","投保人姓名","投保人联系方式","投保人证件号","被保人姓名","录入时间","承保时间","出单员工号","出单员姓名","支付状态","保单状态"] # 表头,请根据实际情况制定
    fileList = []
    for fileName in glob.glob(location + "*.xls"):
        fileList.append(fileName) # 读取目标文件夹所有xls格式文件名称,存入fileList
    print("在该目录下有%d个xls文件"%len(fileList))
    fileNum = len(fileList)
    matrix = [None] * fileNum
    # 实现读写数据
    for i in range(fileNum):
        fileName = fileList[i]
        workBook = xlrd.open_workbook(fileName)
        try:
            sheet = workBook.sheet_by_index(0)
        except Exception as e:
            print(e)
        nRows = sheet.nrows
        matrix[i] = [0]*(nRows - 1)
        nCols = sheet.ncols
        for m in range(nRows - 1):
            matrix[i][m] = ["0"]* nCols
        for j in range(1,nRows):
            for k in range(nCols):
                matrix[i][j-1][k] = sheet.cell(j,k).value
    fileName = xlwt.Workbook()
    sheet = fileName.add_sheet("combine")
    for i in range(len(header)):
        sheet.write(0,i,header[i])
    rowIndex = 1
    for fileIndex in range(fileNum):
        for j in range(len(matrix[fileIndex])):
            for colIndex in range (len(matrix[fileIndex][j])):
                sheet.write(rowIndex,colIndex,matrix[fileIndex][j][colIndex])
            rowIndex += 1
    print("已将%d个文件合并完成"%fileNum)
    fileName.save(location + date + ".xls")
    

    转改:https://www.cnblogs.com/shadrach/p/7687502.html
    超过7万小于100万行数据合并方式

    import os
    import pandas as pd
    import time
    import xlrd
    import openpyxl
    from openpyxl import load_workbook
    path = r'H:/ftp合并/'
    data = pd.DataFrame(columns=[])
    # data = pd.DataFrame(columns=['ID','Name','Code','Mail'])
    for parents,dirnames,filenames in os.walk(path):
        for filename in filenames:
            df=pd.read_excel(os.path.join(parents,filename))
            data = data.append(df,ignore_index=False)
            data.to_excel('data.xlsx')
            print(filename+'处理完成时间:'+time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
    print("完成")
    

    转改:https://blog.csdn.net/cwjcw81/article/details/83144258

    展开全文
  • Python 合并文件夹下所有的Excel文件

    千次阅读 2020-12-01 03:42:30
    打开windows窗口并选择文件(askopenfilename())或文件夹(askdirectory ())。下面的代码是一个示例打开文件夹和文件。导入作为tkFDdef __init__(自我,根):=按钮([1],文本=\u201C选择文件\u201D,,宽度= 10)(=左,padx =...

    打开windows窗口并选择文件(askopenfilename())或文件夹(askdirectory ())。下面的代码是一个示例打开文件夹和文件。导入作为tkFDdef __init__(自我,根):=按钮([1],文本=\u201C选择文件\u201D,,宽度= 10)(=左,padx = 2, pady = 10) =文本([1],身高= 1,宽度= 80)(=左,padx = 2, pady = 10) =按钮([3]、文本=\u201C选择根目录\u201D,,宽度= 10)(=左,padx = 2, pady = 10) =文本([3],身高= 1,宽度= 40)(=左,padx = 2, pady = 10) def openfile(自我):(文件= [(\u201CExcel工作簿\u201D、\u201C。

    \/usr\/bin\/env python # - * -编码:utf - 8 - *进口大熊猫作为pdimport osfrom Tkinter从tkFileDialog进口进口* *类应用:def __init__(自我,根):=帧(根)#容器()=按钮(框、文本=\u201CExcel文件夹\u201D,宽度= 20,身高= 1)。网格(行= 0,列= 0)=按钮(框、文本=\u201C运行\u201D,宽度= 20,身高= 1)。网格(行= 3,列= 0)=按钮(框、文本=\u201C退出\u201D,宽度= 20,身高= 1)。网格(= 4行,= 0列)=条目(框架)(行= 0,列= 2)(0)#输入框中的内容清晰(0,\u201C显示文件路径\u201D)= StringVar () = [] def filefound1(自我):= askdirectory ()打印(0)#清楚输入框中的内容(0)返回#遍历指定目录,在目录中显示所有文件名def eachFile(自我):pathDir =()在pathDir allDir:如果allDir [- 4:] = =\u201Cxlsx\u201D或allDir [4:] = =\u201Cxls\u201D:孩子=(%年代\\ % s % (allDir))打印孩子# .

    展开全文
  • 点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤怀君属秋夜,散步咏凉天。大家好,我是Python进阶者。今天继续给...

    点击上方“Python爬虫与数据挖掘”,进行关注

    回复“书籍”即可获赠Python从入门到进阶共10本电子书

    怀君属秋夜,散步咏凉天。

        大家好,我是Python进阶者。今天继续给大家分享Python自动化办公的知识,之前也给大家分享过一些,感兴趣的话可以看看。

    【Excel篇】

    1、盘点4种使用Python批量合并同一文件夹内所有子文件夹下的Excel文件内所有Sheet数据

    2、补充篇:盘点6种使用Python批量合并同一文件夹内所有子文件夹下的Excel文件内所有Sheet数据

    3、手把手教你使用openpyxl库从Excel文件中提取指定的数据并生成新的文件(附源码)

    4、手把手教你4种方法用Python批量实现多Excel多Sheet合并

    5、手把手教你利用Python轻松拆分Excel为多个CSV文件

    6、老板让我从几百个Excel中查找数据,我用Python一分钟搞定!

    7、Python+Excel+Word一秒制作百份合同

    8、Python 自动整理 Excel 表格

    9、利用Python将Word试卷匹配转换为Excel表格

    【未完待续......】

    前言

        前几天发布了合并Excel的文章,补充篇:盘点6种使用Python批量合并同一文件夹内所有子文件夹下的Excel文件内所有Sheet数据,在留言区有个叫【有点意思】的粉丝在上面留言了两个问题,如下图所示。

    1229a6a4d265f1e2b17790d7c9165c0c.png

        问题:想向大佬们求教个问题,如果我有这样的需求,如何完成:

        1、将A文件中名为a的sheet和B文件中名为b的sheet合并到一个sheet中去。

        2、将文件夹下所有文件的第二张表合并。我做出来了,核心部分没有用pandas,而且逻辑比较繁琐。想求一用pandas解决的简洁方案。

    二、解决思路

        问题一和问题二的思路都挺常规的,就是取对应的表格,然后进行合并即可,这里仍然使用pandas来进行实现!

    三、解决方法

        问题一:将A文件中名为a的sheet和B文件中名为b的sheet合并到一个sheet中去。

        这里基于之前【🌑(这是月亮的背面)】提供的代码,我稍微做了些修改,代码如下:

    # coding: utf-8
    # 将A文件中名为a的sheet和B文件中名为b的sheet合并到一个sheet中去
    from pathlib import Path
    import pandas as pd
    
    
    path = r'E:\PythonCrawler\有趣的代码\Python自动化办公\将A文件中名为a的sheet和B文件中名为b的sheet合并到一个sheet中去'
    data_ex1 = pd.read_excel('ex1.xlsx', sheet_name='df1')
    data_ex2 = pd.read_excel('ex2.xlsx', sheet_name='df2')
    result = pd.concat([data_ex1, data_ex2], ignore_index=True)
    result.to_excel('将A文件中名为a的sheet和B文件中名为b的sheet合并到一个sheet中去.xlsx', index=False, encoding='utf-8')
    print('添加和合并完成!')

        代码运行之后,会生成一个新的excel文件,如下图所示:

    a3901a2b73c262b92def9edeb5f07243.png

        合并的结果如下图所示:

    9053eb96cfa277f8e0865d6d4e7717d9.png

        完成之后,我发给【有点意思】大佬看,不过这个答案勉强符合他的意思,他后来自己也写了一个代码,能满足自己的需求,这里发给大家看看。

    24bc1657e09f0af32a4519791d4bfdf3.png

        问题二:将文件夹下所有文件的第二张表合并

        这里基于之前【🌑(这是月亮的背面)】提供的代码,我稍微做了些修改,代码如下:

    # coding: utf-8
    # 合并所有表格中的第二张表格
    from pathlib import Path
    import pandas as pd
    
    
    path = Path(r'E:\PythonCrawler\有趣的代码\Python自动化办公\将文件夹下所有文件的第二张表合并')
    data_list = []
    for i in path.glob("*.xls*"):
        # data = pd.read_excel(i, sheet_name='df2')
        data = pd.read_excel(i, sheet_name=1)
        data_list.append(data)
    
    
    result = pd.concat(data_list, ignore_index=True)
    result.to_excel(path.joinpath('取所有excel表的df2表进行合并.xlsx'), index=False, encoding='utf-8')
    print('添加和合并完成!')

        代码运行之后,会生成一个新的excel文件,如下图所示:

    695a4b3f7887bc2c191effbd6337fcdc.png

        合并的结果如下图所示:

    438b9a54c4b653c4ea053288996734f4.png

        细心的小伙伴可能发现代码中的第9行,我其实是注释了,一开始我测试的表格,命名规则很有规范,每个工作簿都有df1,df2,df3三张表格,所以在合并的时候直接指定了表名,但是这样写就会有问题,万一有个表格中没有df2工作表,这个代码肯定就会报错了,所以在【🌑(这是月亮的背面)】大佬的指导下,使用了sheet_name=1参数,以索引来定位第二张表格,恰到好处,前提条件是你的Excel表格中必须要有第二张表格,否则就会出现下图的错误。

    c6879c4215c865ae15daa5e50f4cde5e.png

    四、总结

        我是Python进阶者。本文基于粉丝针对Python处理Excel指定表格合并的提问,给出了一个利用Python基础+pandas处理的解决方案,完全满足了粉丝的要求。

        最后感谢粉丝【有点意思】提问,感谢【🌑(这是月亮的背面)】、【dcpeng】大佬等提供的代码,感谢【冫马讠成】等人的参与探讨学习。文章针对两个问题,分别给出了一种解决方法,如果你也有其他的方法,也可以随时分享给我噢!人生苦短,我用python!

        更多Python自动化办公的相关代码,我已经上传到git,欢迎大家下载和star支持。

    https://github.com/cassieeric/Python-office-automation

    52f4954c69926e9d0f668e28a9eaff4e.png

        小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。

    354ee9c7721aeb52ee8fb1b91efb01eb.png

    ------------------- End -------------------

    往期精彩文章推荐:

    0e5d634a3a4204e54f22ebb5127d3665.png

    欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

    想加入Python学习群请在后台回复【入群

    万水千山总是情,点个【在看】行不行

    /今日留言主题/

    随便说一两句吧~~

    展开全文
  • 现在需要将多个excel中的相同命名的sheet合并到同一个sheet当中,组合成一个excel文件。具体代码如下: #使用os模块walk函数,搜索出某目录的全部excel文件 def getFileName(filepath): file_list = [] for ...
  • 点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤春潮带雨晚来急,野渡无人舟自横。一、前言大家好,我是Python进...
  • newdata = pd.read_excel(r'D:\datas\%s'%files[i])#读取每个excel文件中的数据 alldata = alldata.append(newdata)#将每个excel中的数据存储到之前建好的空的dataframe中 writer = pd.ExcelWriter(r'D:\output....
  • 在数据格式相同的情况,可以对数据进行合并: import os import pandas as pd # cob_path 为要合并文件夹 cob_path = r'C:\质押公告爬取'+os.sep filename = os.listdir(cob_path) zhiya = pd.DataFrame([], ...
  • 将所有需要合并excel放进一个单独的文件夹里 定义一个函数 def append(path): #path:所有需要合并excel文件所在的文件夹 filename_excel = [] # 建立一个空list,用于储存所有需要合并excel名称 frames = ...
  • 安装模块 2、用pip install... 总结 以上所述是小编给大家介绍的Python合并多个Excel数据的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
  • 工作中经常遇到要将十几个Excel(不管是xls、或者是CSV)合并到同一个文件中去,手工一个一个复制是不可能的,此时就轮到Python出马了主要是利用for循环,读取每一个文件,作为df,然后再通过list的append加在一起,...
  • 主要介绍了使用 Python 合并多个格式一致的 Excel 文件,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考
  • xlsx 格式 代码如下: import pandas as pd ...excel_dir = ['//mac/Home/Desktop/考试信息数据归档/人员信息2.xlsx', '//mac/Home/Desktop/考试信息数据归档/人员信息.xlsx'] li = [] for i in excel_dir: li.a...
  • 一个文件夹下有多个excel表格,格式统一,均为 xlsx后缀,字段也一样,现在要合并为一个excel表格。 二、合并效果 三、python 实现代码# -*- coding:utf-8*- import sys reload(sys) sys.setdefaultencoding('utf-...
  • 批量合并某个文件夹内子文件夹的所有Excel,并新增两列分别备注文件路径和子sheet名使用tips: 1、修改文件目录成自己想合并的总文件夹路径;如运行时间太久,可能是文件太大或者太多的原因,可考虑精准缩小文件夹...
  • 可以使用pythonExcel表格的基础上快速生成,Excel把需要的数据填写,则自动生成标贴 处理步骤流程 从“info”工作表读取所有物料的信息 转换字母为大写,存储好信息. (标签中的品牌必须是大写字母,所以...
  • python读写excel文件,合并同一个文件夹下所有excel文件
  • python-合并Excel文件【上百个不在同一文件夹下Excel文件,处理过程超多】前言:1、今天的excel数据1.1、数据展示2、合并思路分析3、步入代码3.1、导入模块3.2、解决思路步骤4*3.3、解决空、缺失值提取完整数据 ...
  • 将多个子文件夹下的相同名字的excel文件合并成一个excel,可以直接运行。excel见下面链接 https://amaze.blog.csdn.net/article/details/124889377?spm=1001.2014.3001.5502
  • 点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤春潮带雨晚来急,野渡无人舟自横。一、前言大家好,我是Python进...
  • 工作中使用Python开发的一个合并Excel的工具,图形界面,可以把一个文件夹下所有Excel里的所有Sheet的内容合并到一个Excel文件的一个Sheet里并生成Excel文件保存。可以根据模板文件合并指定的具体列,内有操作说明。...
  • 使用Pandas合并多个Excel
  • 应用场景:使用pandas把多个相同结构的Excel文件合并为一个。...for root,dirs,files in os.walk(pwd): # 第一个为起始路径,第二个为起始路径文件夹,第三个是起始路径的文件。 for file in files:
  • 注意: 需要安装pandas,openpyxl这两个第三方类库,否则会报错。 代码实现: # -*- coding: gbk -*- import os ... # dirs是root的所有目录,files是root的所有文件 for file in files: df = pd.re
  • 此前因为合并一种劳务费申诉表(数据不超过2000行x19列)写过一个python+xlwings合并文件夹下excel文件的脚本代码(可以查我之前的文章: python3和xlwings实现的合并同一目录的所有excel(工作薄)文件中的
  • 读取某文件夹下所有excel文件 python

    千次阅读 2020-11-28 04:47:29
    import osimport pandas as pdfrom sklearn import linear_modelpath = r'D:\新数据\每日收益率'filenames = os.listdir(path)for filename in filenames:print(filename)for i in filenames:excel_path = 'D:\新...
  • 合并文件夹下面Excel文件并且求和汇总 将程序放到Excel文件夹下执行即可 import openpyxl,os,xlrd,time import pandas as pd import numpy as np """wb = openpyxl.load_workbook('200S010A.xlsx') sheet = wb....
  • 合并多个excel表格,支持界面操作,操作简单,可浏览文件夹及选择表头行数 使用python实现,界面实现采用wxpython,支持不同格式的表格,需安装anaconda3.5及对应头文件,应用程序较大无法上传,如果需要可以联系...
  • Python批量合并多个excel文件 1.首先准备数据文件 我这里本来只有一个csv文件,我就把它复制了两份改了一下名字 下面是我最近毕设机械臂抓取任务的交互数据,第一列是reward,第二列是长度,第三列是时间 2.编写...
  • 本文实例讲述了Python实现合并excel表格的方法。分享给大家供大家参考,具体如下: 需求 将一个文件夹中的excel表格合并成我们想要的形式,主要要pandas中的concat()函数 思路 用os库将所需要处理的表格放到同一个...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,731
精华内容 1,492
关键字:

python合并文件夹下excel