Pandas 新增 Excel 工作表:不覆盖已有内容
使用 Pandas 库操作 Excel 文件时,可以使用 'ExcelWriter' 类来实现新增工作表而不覆盖已存在的 sheet。以下是一个简单的示例代码:
import pandas as pd
# 读取 Excel 文件
df_existing = pd.read_excel('file.xlsx')
# 创建新的 sheet 内容
df_new = pd.DataFrame({'Column1': [1, 2, 3], 'Column2': ['A', 'B', 'C']})
# 将数据写入 Excel 文件,设置 mode='a' 表示追加写入
with pd.ExcelWriter('file.xlsx', mode='a', engine='openpyxl') as writer:
# 将新的数据写入新的 sheet,sheet_name 表示 sheet 的名称
df_new.to_excel(writer, sheet_name='NewSheet', index=False)
# 读取文件来确认是否新增了 sheet
df_updated = pd.read_excel('file.xlsx', sheet_name='NewSheet')
print(df_updated)
在上述示例中,首先使用 pd.read_excel 函数读取已存在的 Excel 文件内容。然后,使用 pd.DataFrame 创建新的数据 df_new。接下来,使用 pd.ExcelWriter 和 with 语句打开 Excel 文件,并将新的数据 df_new 通过 to_excel 方法写入到 Excel 文件中,设置 mode='a' 表示追加写入。最后,使用 pd.read_excel 函数读取文件来确认是否新增了名为 'NewSheet' 的 sheet。
需要注意的是,使用 pd.ExcelWriter 时,需要指定参数 engine='openpyxl',以支持读写 Excel 文件。确保已经安装了 openpyxl 库,可以使用 pip install openpyxl 进行安装。
原文地址: https://www.cveoy.top/t/topic/cLau 著作权归作者所有。请勿转载和采集!