下面是详细讲解使用Python将多个Excel文件合并到同一个文件的方法的完整实例教程。
准备工作
在操作前,需要先安装Pandas模块,Pandas是Python的一个数据处理库,可以处理各种数据。使用以下命令可以安装Pandas:
pip install pandas
思路
合并多个Excel文件的思路是将多个文件的数据逐一读入到Python中,在将它们存储至同一个Excel文件中。因此,需要先了解如何读取Excel文件和如何写入Excel文件两个基本操作。
读取Excel文件
使用pandas库的read_excel函数,可以轻松地读取Excel文件中的数据,这个函数的基本用法如下:
import pandas as pd
df = pd.read_excel('file.xlsx', sheet_name='Sheet1')
- 第一个参数
file.xlsx
是需要读取的文件名,也可以是Excel文件的绝对路径。 - 第二个参数
sheet_name='Sheet1'
是需要读取的sheet名称。
写入Excel文件
使用pandas库的to_excel
函数,可以轻松地将数据写入Excel文件,该函数的基本用法如下:
import pandas as pd
df.to_excel('file.xlsx', sheet_name='Sheet1', index=False)
- 第一个参数
file.xlsx
是需要写入的文件名,也可以是Excel文件的绝对路径。 - 第二个参数
sheet_name='Sheet1'
是需要将数据写入的sheet名称。 - 第三个参数
index=False
指定不将数据的行索引写入Excel文件。
合并多个Excel文件
下面使用两个示例来说明如何合并多个Excel文件。
首先,我们需要先准备几个需要合并的Excel文件,假设这些文件的文件名分别为file1.xlsx
、file2.xlsx
、file3.xlsx
,它们的内容分别如下:
file1.xlsx - Sheet1 | ||
---|---|---|
A | B | C |
1 | 2 | 3 |
4 | 5 | 6 |
file2.xlsx - Sheet1 | ||
---|---|---|
A | B | C |
7 | 8 | 9 |
10 | 11 | 12 |
file3.xlsx - Sheet1 | ||
---|---|---|
A | B | C |
13 | 14 | 15 |
16 | 17 | 18 |
示例一
将文件夹中所有excel文件合并到一个excel文件的不同sheet
import os
import pandas as pd
# 获取需要读取的文件夹路径
path = 'folder_with_excel_files'
# 创建一个空的DataFrame
merged_df = pd.DataFrame()
# 循环读取文件夹中所有excel文件
for filename in os.listdir(path):
if filename.endswith('.xlsx'):
# 读取Excel文件
file = os.path.join(path, filename)
df = pd.read_excel(file, sheet_name='Sheet1')
# 将读取的数据添加至merged_df中
merged_df = merged_df.append(df, ignore_index=True)
# 将merged_df写入同一个Excel文件中的Sheet1
merged_df.to_excel('merged_file.xlsx', sheet_name='Sheet1', index=False)
其中,第一个参数folder_with_excel_files
是需要读取的文件夹路径,第二个参数merged_file.xlsx
是需要写入的文件名,也可以是Excel文件的绝对路径。
示例二
将文件夹中所有excel文件合并到一个excel文件的不同sheet
import os
import pandas as pd
# 获取需要读取的文件夹路径
path = 'folder_with_excel_files'
# 创建一个空的Excel文件
writer = pd.ExcelWriter('merged_file.xlsx', engine='xlsxwriter')
# 循环读取文件夹中所有excel文件
for index, filename in enumerate(os.listdir(path)):
if filename.endswith('.xlsx'):
# 读取Excel文件
file = os.path.join(path, filename)
df = pd.read_excel(file, sheet_name='Sheet1')
# 将读取的数据写入Excel文件中的Sheet(index+1)
df.to_excel(writer, sheet_name='Sheet{}'.format(index+1), index=False)
# 保存Excel文件
writer.save()
其中,第一个参数folder_with_excel_files
是需要读取的文件夹路径,第二个参数merged_file.xlsx
是需要写入的文件名,也可以是Excel文件的绝对路径。
到这里,使用Python将多个Excel文件合并到同一个文件的方法就讲解完毕了。希望对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用python将多个excel文件合并到同一个文件的方法 - Python技术站