利用 Python 进行多 Sheet 表合并
时间: 2024-10-13 20:12:30 浏览: 30
在Python中,可以使用pandas库轻松地合并多个Excel工作表,即使它们来自不同的工作簿。Pandas提供了一个`read_excel`函数,你可以通过指定`sheet_name`参数来选择你需要合并的特定工作表。以下是一个简单的步骤:
1. 首先,确保已经安装了pandas和openpyxl库(如果还没有安装,可以用pip install pandas openpyxl命令进行安装)。
2. 使用pandas的DataFrame读取每个工作表:
```python
import pandas as pd
# 创建一个空列表来存储数据
data_frames = []
# 假设你有一个包含多个Excel文件的工作目录
file_list = ['file1.xlsx', 'file2.xlsx', 'file3.xlsx'] # 替换为你实际的文件名
for file in file_list:
data = pd.read_excel(file, engine='openpyxl') # 使用openpyxl引擎打开Excel文件
sheet_names = data.sheet_names # 获取所有工作表名称
for sheet in sheet_names:
df = data[sheet] # 选择特定工作表
data_frames.append(df) # 将工作表添加到列表中
# 如果只有一个目标工作表,可以直接传递sheet_name参数
# df = pd.read_excel('file.xlsx', sheet_name='Sheet1')
```
3. 最后,你可以将所有的DataFrame合并成一个大的DataFrame,比如按行拼接:
```python
merged_df = pd.concat(data_frames, ignore_index=True)
```
或者按列拼接(假设所有工作表的结构相同):
```python
merged_df = pd.concat([df[col] for df in data_frames], axis=1)
```
阅读全文