如何在 pandas 中合并多个 excel 工作表


通常,您可能希望将多个 Excel 工作表导入并合并到一个 pandas DataFrame 中。

例如,假设您有以下名为data.xlsx的 Excel 工作簿,其中包含三个不同的工作表,全部包含两列篮球运动员数据:

我们可以使用 pandas concat()read_excel()函数轻松地将每个工作表导入并组合到单个 pandas DataFrame 中,但首先我们需要确保安装了xlrd

 pip install xlrd

安装后,我们可以使用以下代码将这三个表导入并组合成一个 Pandas DataFrame:

 #load pandas library
import pandas as pd

#import and combine the three sheets into one pandas DataFrame
df = pd. concat (pd. read_excel ('data.xlsx', sheet_name= None ), ignore_index= True )

#view DataFrame
df

        player points
0 to 12
1 B 5
2 C 13
3 D 17
4 E 27
5 F 24
6 G 26
7:27 a.m.
8 I 27
9 D 12
10K 9
11 L 5
12 M 5
13 N 13
14 O 17

这段代码是如何工作的

只需两部分即可了解这一行代码如何导入并组合多个 Excel 工作表:

1. 阅读所有表格。

 p.d. read_excel ('data.xlsx', sheet_name= None )

这段代码读取 Excel 工作簿的所有工作表。默认情况下, read_excel()函数仅读取第一个工作表,但是通过指定sheet_name=None,我们可以读取Excel工作簿中的每个工作表。

2. 连接所有工作表。

 p.d. concat ( DataFrames to concatenate , ignore_index= True )

这段代码只是将每个 Excel 工作表中的所有 DataFrame 连接成一个 pandas DataFrame。通过指定ignore_index=True ,我们告诉pandas各个叶子名称并不重要。

请注意,此代码仅在每个 Excel 工作表具有相同格式时才有效。在此示例中,每个工作表都有两列数据,并且每列都具有相同的名称,这就是为什么这一行代码可以轻松地将每个 Excel 工作表合并到一个 pandas DataFrame 中。

其他资源

终极指南:如何使用 Pandas 读取 Excel 文件
如何跨多个 Excel 工作表编写 Pandas DataFrame

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注