pandas读取excel的所有sheet,修改第四个sheet,其他sheet不变,并保存更新到excel
时间: 2024-01-24 22:02:56 浏览: 71
pandas读取和保存excel文件
可以使用 pandas 的 ExcelWriter 对象来实现这个需求。具体的步骤如下:
1. 使用 pandas 的 read_excel 方法读取整个 excel 文件,设置参数 sheet_name=None 表示读取所有 sheet,返回一个字典,字典的 key 是 sheet 名称,value 是对应的 DataFrame。
2. 修改第四个 sheet 对应的 DataFrame。
3. 使用 pandas 的 ExcelWriter 对象创建一个新的 excel 文件。
4. 遍历所有 sheet,将第四个 sheet 修改后的 DataFrame 写入到 ExcelWriter 对象中,其他 sheet 直接复制。
5. 最后调用 ExcelWriter 对象的 save 方法将修改后的 excel 文件保存到磁盘上。
具体的代码如下:
```python
import pandas as pd
# 读取整个 excel 文件
df_dict = pd.read_excel('example.xlsx', sheet_name=None)
# 修改第四个 sheet 对应的 DataFrame
df_dict['Sheet4'] = df_dict['Sheet4'] * 2
# 创建一个新的 excel 文件
writer = pd.ExcelWriter('updated.xlsx', engine='xlsxwriter')
# 遍历所有 sheet,将第四个 sheet 修改后的 DataFrame 写入到 ExcelWriter 对象中,其他 sheet 直接复制
for sheet_name, df in df_dict.items():
if sheet_name == 'Sheet4':
df.to_excel(writer, sheet_name=sheet_name, index=False)
else:
df.to_excel(writer, sheet_name=sheet_name, index=False)
# 保存修改后的 excel 文件
writer.save()
```
注意:在创建 ExcelWriter 对象时,需要指定 engine 参数为 'xlsxwriter',否则会报错。
阅读全文