下面就来详细讲解如何利用Python汇总统计多张Excel的完整实例教程。
1. 确定需求
在开始编写代码之前,我们需要把需求明确,确定要实现哪些功能。假设我们现在手里有3个Excel文件,其文件名分别为file1.xlsx
、file2.xlsx
和file3.xlsx
,每个文件中有一个名为Sheet1
的工作表。我们需要把这3个Excel文件中的数据进行合并,生成一个新的Excel文件。
2. 安装相关依赖
在本教程中,我们将使用pandas
和openpyxl
两个库来实现Excel文件的读写和合并。这里需要先确保这两个库已经被安装。
pip install pandas openpyxl
3. 编写代码
接下来,我们就可以开始编写代码了。以下是完整的代码示例:
import pandas as pd
# 打开3个Excel文件并读取数据
file1 = pd.read_excel('file1.xlsx', sheet_name='Sheet1')
file2 = pd.read_excel('file2.xlsx', sheet_name='Sheet1')
file3 = pd.read_excel('file3.xlsx', sheet_name='Sheet1')
# 合并数据
result = pd.concat([file1, file2, file3])
# 将合并后的数据保存为新的Excel文件
result.to_excel('merged.xlsx', index=False)
在这个代码示例中,我们首先导入了pandas
库。然后,使用pd.read_excel
函数读取了3个Excel文件中的数据,并将这3个文件的数据进行合并,生成了一个新的DataFrame对象result
。最后,使用result.to_excel
函数将result
中的数据保存到名为merged.xlsx
的新Excel文件中,其中index=False
表示不将索引写入Excel文件中。
4. 示例说明
接下来,我们尝试使用两个例子来说明这个代码示例的具体用法。
示例1
假设file1.xlsx
文件中的数据如下:
Name | Age | Gender |
---|---|---|
Tom | 20 | Male |
Jack | 22 | Male |
Mary | 19 | Female |
file2.xlsx
文件中的数据如下:
Name | Age | Gender |
---|---|---|
David | 21 | Male |
Lisa | 20 | Female |
Mike | 23 | Male |
file3.xlsx
文件中的数据如下:
Name | Age | Gender |
---|---|---|
Richard | 18 | Male |
Lily | 19 | Female |
Bob | 20 | Male |
使用上述的代码示例,我们可以将这3个Excel文件中的数据进行合并,生成一个新的Excel文件。新的Excel文件中的数据如下:
Name | Age | Gender |
---|---|---|
Tom | 20 | Male |
Jack | 22 | Male |
Mary | 19 | Female |
David | 21 | Male |
Lisa | 20 | Female |
Mike | 23 | Male |
Richard | 18 | Male |
Lily | 19 | Female |
Bob | 20 | Male |
这个表格中的数据就是把三个文件中的数据合并起来后得到的结果。
示例2
假设我们现在还有一个名为file4.xlsx
的Excel文件,其数据如下:
Name | Score |
---|---|
Tom | 85 |
Jack | 93 |
Mary | 78 |
David | 91 |
Lisa | 82 |
Mike | 87 |
Richard | 76 |
Lily | 80 |
Bob | 89 |
如果我们想要将这个Excel文件中的数据也合并到前面的3个Excel文件中,可以先将该Excel文件读取出来,然后再和前面的结果进行合并。具体的代码可以修改如下:
import pandas as pd
# 打开4个Excel文件并读取数据
file1 = pd.read_excel('file1.xlsx', sheet_name='Sheet1')
file2 = pd.read_excel('file2.xlsx', sheet_name='Sheet1')
file3 = pd.read_excel('file3.xlsx', sheet_name='Sheet1')
file4 = pd.read_excel('file4.xlsx', sheet_name='Sheet1')
# 合并数据
result = pd.concat([file1, file2, file3, file4])
# 将合并后的数据保存为新的Excel文件
result.to_excel('merged.xlsx', index=False)
使用上述代码,我们可以将4个Excel文件的数据进行合并,得到一个包含所有数据的新Excel文件。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:利用python汇总统计多张Excel - Python技术站