Python之Excel合并

大家好!今天我们要一起探索如何使用Python这个神奇的工具,将一堆Excel文件轻松合并成一个大文件。想象一下,就像是一台高效的Excel数据收割机,让你的工作效率飙升!准备好你的笔记本,跟着我一步步操作吧。

1. 导入所需库

首先,我们需要导入两个Python库:pandasospandas 是数据分析的大杀器,而 os 则帮我们处理文件和目录操作。

python 复制代码
import pandas as pd
import os

2. 定义函数:读取Excel文件

接下来,我们要创建一个函数 read_excel_files(),它会遍历指定目录下的所有Excel文件,并读取内容。

python 复制代码
def read_excel_files(directory):
    excel_files = [f for f in os.listdir(directory) if f.endswith('.xlsx') or f.endswith('.xls')]
    data_frames = []
    for file in excel_files:
        df = pd.read_excel(os.path.join(directory, file))
        data_frames.append(df)
    return data_frames

3. 合并数据

现在有了读取文件的函数,我们可以用另一个函数 merge_dataframes() 来合并所有数据帧。

python 复制代码
def merge_dataframes(data_frames):
    merged_df = pd.concat(data_frames, ignore_index=True)
    return merged_df

ignore_index=True 是为了确保合并后的行索引从0开始,这样看起来更清爽。

4. 写入新Excel文件

最后,我们来一个"一键合并"操作,把所有数据写入新的Excel文件。

python 复制代码
def write_to_excel(merged_df, output_file):
    merged_df.to_excel(output_file, index=False)

5. 实战演练

现在,把这些函数串起来用一个简单的例子展示:

python 复制代码
# 指定要读取的文件夹路径
input_dir = 'your_directory_with_excel_files'

# 创建一个新的Excel文件保存结果
output_file = 'merged_data.xlsx'

# 读取文件、合并数据并写入新文件
all_data = read_excel_files(input_dir)
merged_data = merge_dataframes(all_data)
write_to_excel(merged_data, output_file)

print(f"恭喜你,所有数据已合并到'{output_file}'!")

记得将 your_directory_with_excel_files 替换为你实际存放Excel文件的文件夹路径。

就这样,通过Python,你不再需要手动一个接一个地打开和粘贴数据了。这不仅提高了效率,还能避免因为手动操作可能出现的错误。快去试试看吧,让你的Excel数据管理变得更简单、更有趣!

相关推荐
ACP广源盛13924625673几秒前
GSV6155@ACP# Type-C 视频信号转换芯片:技术架构、工程痛点适配与落地场景分析
大数据·c语言·开发语言·人工智能·分布式·嵌入式硬件·架构
程序员-Benothing8 分钟前
Java集合:List实现类深度对比
java·开发语言·后端·面试·list
酷在前行15 分钟前
【R论文复刻】Nature Communications 冲积图进阶:状态转移、流带排序与多面板排版(保姆级教程)
开发语言·r语言
薛少杰28 分钟前
Python异步系统学习路线第59讲_核心原理与实战案例详解【技巧】
python·事件循环·异步编程·实战案例·协程调度
减瓦29 分钟前
用 Git 为本地文件打造一台时光机
开发语言·git·编辑器
一次旅行33 分钟前
fzf+ripgrep+fd终端三合一实战:一套检索工具链,大幅提升大型项目开发效率
人工智能·python·github
卷无止境37 分钟前
当代码要上线前,谁在替你把关?——Python安全审查的方法论与实践
后端·python
冻柠檬飞冰走茶38 分钟前
PTA基础编程题目集 7-37 整数分解为若干项之和(C语言实现)
c语言·开发语言·数据结构·算法
卷无止境44 分钟前
Python Dataclasses:让类定义回归简洁的艺术
后端·python
北冥you鱼1 小时前
Go语言数组越界处理机制详解:从编译时检查到运行时panic
java·python·golang