python怎么把多个表格汇总到一个表格的不同sheet并保留原格式
时间: 2024-09-14 16:04:28 浏览: 31
在Python中,我们可以使用pandas库来操作Excel文件,包括读取、合并以及保存数据。如果你想要将多个表格汇总到一个Excel文件的不同sheet,并保持原始格式,你可以按照以下步骤操作:
1. 首先,安装pandas和openpyxl库,如果还没有安装的话:
```bash
pip install pandas openpyxl
```
2. 使用`read_excel()`函数读取每个单独的表格,假设它们都在同一目录下:
```python
import os
import pandas as pd
# 获取当前目录下的所有xls/xlsx文件
files = [f for f in os.listdir('.') if f.endswith('.xls') or f.endswith('.xlsx')]
data_frames = []
for file in files:
df = pd.read_excel(file)
data_frames.append(df)
```
3. 然后,将每个DataFrame追加到一个大的DataFrame,比如使用`concat()`函数并将`ignore_index=True`来创建新的索引:
```python
master_df = pd.concat(data_frames, ignore_index=True) # 追加到一个大表
```
4. 最后,使用`to_excel()`函数将结果写入一个新的Excel文件,指定你要添加到不同sheet的名称:
```python
output_file = 'combined_data.xlsx'
with pd.ExcelWriter(output_file, engine='openpyxl') as writer:
for i, df in enumerate(master_df):
sheet_name = f"Sheet{i+1}" # 假设你想从0开始计数
df.to_excel(writer, sheet_name=sheet_name, index=False) # 将DataFrame写入对应sheet
```
这将会在`combined_data.xlsx`中,每个原本的表格作为一个单独的工作表存在。