pandas实现多个工作簿合并为一个工作簿,但是每个工作表还是独立的,请给我示例代码
时间: 2024-11-27 11:20:22 浏览: 25
在Pandas中,你可以通过逐个工作簿加载工作表,然后将它们添加到一个新的DataFrame中,最后将这个DataFrame转换回Excel工作簿的形式。这里有一个简单示例:
```python
import pandas as pd
from glob import glob # 用于查找多个Excel文件
# 获取所有Excel文件
excel_files = glob('*.xlsx') # 更改为你文件夹路径下的Excel文件名
# 初始化一个空字典,用于存储每个工作表的数据
all_data = {}
# 遍历每个Excel文件
for file in excel_files:
# 加载Excel文件
wb = pd.ExcelFile(file)
# 遍历文件中的每个工作表
for sheet_name in wb.sheet_names:
# 加载工作表数据
data = wb.parse(sheet_name)
# 如果工作表名字已经在字典中,则更新对应键的值
if sheet_name in all_data:
all_data[sheet_name].append(data)
else:
all_data[sheet_name] = [data]
# 创建一个新的DataFrame来组合所有工作表的数据
merged_df = pd.concat(all_data)
# 保存新的DataFrame为单独的工作簿
merged_df.to_excel('merged_workbook.xlsx', index=False) # 输出到新工作簿
```
在这个示例中,原始的工作簿被保持为各自独立的数据块,每个工作表的内容都在各自的DataFrame中。最终,所有工作表的内容都被合并在了一个单独的Excel文件`merged_workbook.xlsx`中。
阅读全文
相关推荐


















