让我来为你详细讲解“Python实现Excel文件的合并(以新冠疫情数据为例)”的完整实例教程。
标题
Python实现Excel文件的合并(以新冠疫情数据为例)
介绍
这是一篇使用Python语言实现合并Excel文件的教程,以新冠疫情数据为例。在这个教程中,我们将向你展示如何使用Python中的pandas库将多个Excel表格合并为一个大表格。
步骤
步骤一:导入必要的库
在Python中合并Excel文件的第一步是导入必要的库。在这个教程中,我们将使用以下库:
import pandas as pd
import glob
其中,pandas库是Python中一个流行的数据分析库,可以用于处理Excel文件、csv文件等数据文件。glob库可以用于找到符合特定模式的文件路径名。
步骤二:找到需要合并的Excel文件
在这个教程中,我们将使用glob库找到需要合并的Excel文件。假设所有需要合并的Excel文件都存储在一个名为data的文件夹中,我们可以通过以下代码找到这些文件的路径:
excel_files = glob.glob("data/*.xlsx")
步骤三:读取Excel文件
找到Excel文件的路径后,我们可以使用pandas库的read_excel函数读取这些文件并将它们转换成pandas数据框。每个Excel文件的第一行是表头,我们可以使用参数header=0告诉pandas从第一行开始读取文件。
excel_data = []
for file in excel_files:
df = pd.read_excel(file, header=0)
excel_data.append(df)
步骤四:合并Excel文件
我们将使用pandas库的concat函数将上一步中读取的所有Excel表格合并为一个大表格。concat函数接收一个列表参数,该列表包含所有要合并的pandas数据框。参数axis=0告诉pandas沿着行方向合并这些数据框。最后,我们将结果保存到一个名为all_data的Excel文件中。
all_data = pd.concat(excel_data, axis=0, ignore_index=True)
all_data.to_excel("all_data.xlsx", index=False)
示例一
假设我们有三个Excel文件,分别为1.xlsx、2.xlsx、3.xlsx,这些文件的内容如下:
1.xlsx
Province | Confirmed | Deaths |
---|---|---|
Beijing | 513 | 8 |
Shanghai | 338 | 3 |
Hubei | 67800 | 4512 |
2.xlsx
Province | Confirmed | Deaths |
---|---|---|
Beijing | 514 | 8 |
Shanghai | 340 | 3 |
Hubei | 67900 | 4513 |
3.xlsx
Province | Confirmed | Deaths |
---|---|---|
Beijing | 515 | 8 |
Shanghai | 342 | 3 |
Hubei | 68000 | 4514 |
我们可以将这三个Excel文件存储在名为data的文件夹中,并使用以下代码将它们合并为一个大表格:
import pandas as pd
import glob
# 找到需要合并的Excel文件
excel_files = glob.glob("data/*.xlsx")
# 读取Excel文件
excel_data = []
for file in excel_files:
df = pd.read_excel(file, header=0)
excel_data.append(df)
# 合并Excel文件
all_data = pd.concat(excel_data, axis=0, ignore_index=True)
all_data.to_excel("all_data.xlsx", index=False)
运行上面的代码后,我们将得到一个名为all_data.xlsx的Excel文件,它的内容如下:
Province | Confirmed | Deaths |
---|---|---|
Beijing | 513 | 8 |
Shanghai | 338 | 3 |
Hubei | 67800 | 4512 |
Beijing | 514 | 8 |
Shanghai | 340 | 3 |
Hubei | 67900 | 4513 |
Beijing | 515 | 8 |
Shanghai | 342 | 3 |
Hubei | 68000 | 4514 |
示例二
假设我们希望仅仅合并包含湖北省数据的Excel文件,我们可以使用以下代码实现:
import pandas as pd
import glob
# 找到需要合并的Excel文件
excel_files = glob.glob("data/*.xlsx")
# 读取Excel文件并仅仅保留包含湖北省数据的文件
excel_data = []
for file in excel_files:
df = pd.read_excel(file, header=0)
if "Hubei" in df["Province"].tolist():
excel_data.append(df)
# 合并Excel文件
all_data = pd.concat(excel_data, axis=0, ignore_index=True)
all_data.to_excel("all_data.xlsx", index=False)
运行上面的代码后,我们将得到包含三个Excel文件中所有湖北省数据的名为all_data.xlsx的Excel文件。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python实现Excel文件的合并(以新冠疫情数据为例) - Python技术站