Python Pandas实现简单Excel数据表合并

该博客介绍了如何使用Python进行批量Excel文件的合并操作,规避了VBA在处理某些文件时可能出现的问题。代码示例展示了通过`os`和`pandas`库读取指定文件夹中的Excel文件,从第三行开始读取并转换特定列的数据类型,然后将所有数据帧合并成一个大的数据帧,并最终保存为一个新的Excel文件。整个过程记录了执行时间和效率。
import pandas as pd
import os
import time



time_start = time.time()
rootdir = r'E:\路径1\路径11\路径1111'
list = os.listdir(rootdir)  # 列出文件夹下所有的目录与文件
l = len(list)

for i in range(0, l):
    path = os.path.join(rootdir, list[i])
    df = pd.read_excel(path, header=2, converters={'XXX': str}) #数据(含列标题)从第三行起,XXX(列名称)强制转文本
    if i == 0:
        result = df
    else:
        result = result.append(df)
    print(list[i])

time_end = time.time()
print('to_excel...')

result.to_excel(rootdir + '\\' + 'Excel合并.xlsx', index=False,engine='xlsxwriter') # 经测试对比,较大Excel合并时,xlsxwriter时间开销约为openpyxl的60%,且文件较小

time_end1 = time.time()
print('to_excel 完成!\n用时(秒):', time_end1 - time_end)

一般使用vba合并,但经常有一批需要合并的批量导出表,vba打开时受一个无法处理的提示信息影响,vba不能直接合并。用python合并却不受影响。

引用的代码展示了使用pandas库来读取Excel表格数据的方法。首先需要导入pandas库,然后使用`pd.read_excel`函数来读取Excel文件的数据。通过该函数的`values`属性可以获取表格中所有的数据,`columns.values`属性可以获取第一行的数据,`iloc[:, 0].values`可以获取第一列的数据,`iloc`可以获取第一行第一列的数据。代码则展示了使用xlwt和xlrd库来进行Excel表格文件的增删读写操作。这种操作方法相对繁琐,但是通俗易懂。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Python:使用pandas读取Excel表格数据的完整源代码](https://blog.youkuaiyun.com/uote_e/article/details/130834183)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [Python Pandas操做Excel表格文件:建立新表格,追加数据](https://blog.youkuaiyun.com/weixin_35377028/article/details/116164900)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [Python Pandas实现简单Excel数据表合并](https://blog.youkuaiyun.com/dfljt/article/details/124187854)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dfljt

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值