pandas 向已存在的Excel中插入sheet,不影响原数据
时间: 2024-03-20 15:45:25 浏览: 70
可以使用 pandas 库中的 `ExcelWriter` 类来实现向已存在的 Excel 文件中插入新的 sheet,而不影响原有数据。具体操作步骤如下:
1. 使用 `pandas.read_excel()` 方法读取已存在的 Excel 文件,例如:
```python
import pandas as pd
# 读取已存在的 Excel 文件
excel_file = pd.read_excel('existing_file.xlsx')
```
2. 创建一个新的 `ExcelWriter` 对象,并指定要写入的 Excel 文件名,例如:
```python
# 创建 ExcelWriter 对象
writer = pd.ExcelWriter('existing_file.xlsx', engine='openpyxl')
```
注意,在创建 `ExcelWriter` 对象时,需要指定 `engine` 参数为 `'openpyxl'`,因为该库支持写入已存在的 Excel 文件。
3. 使用 `pandas.DataFrame.to_excel()` 方法将数据写入新的 sheet 中,例如:
```python
# 将数据写入新的 sheet 中
sheet_name = 'new_sheet'
excel_file.to_excel(writer, sheet_name=sheet_name)
```
注意,在调用 `to_excel()` 方法时,需要传入 `ExcelWriter` 对象和新 sheet 的名称。
4. 最后,调用 `ExcelWriter.save()` 方法保存 Excel 文件,例如:
```python
# 保存 Excel 文件
writer.save()
```
注意,在调用 `save()` 方法时,需要保证所有的写入操作都已经完成。
这样,就可以向已存在的 Excel 文件中插入新的 sheet,而不影响原有数据。
阅读全文