【发布时间】:2020-01-07 22:08:12
【问题描述】:
我想将数据框 C 导出到现有的 excel 中,并将其保存在新选项卡中。 我试过了:
writer=pd.ExcelWriter(r'H:\test.xlsx', engine='xlsxwriter')
C.to_excel(writer,sheet_name='c')
writer.save()
(注意:Excel 测试是一个现有和以前保存的 Excel,在选项卡 a、b 中有不同的表 A、B,我想保留它们)
但是,此代码删除了现有的 excel 并创建了一个只有选项卡“c”的新 Excel。我想保留现有的标签“a”和“b”。
什么是正确的方法?
ps:我尝试了链接“如何使用 Pandas 在现有的 excel 文件中保存新工作表?”的建议,如下所示:
writer=pd.ExcelWriter(r'H:\C.xlsx', engine='xlsxwriter')
y_pred_all2.to_excel(writer,sheet_name='cc')
writer.save()
writer.close()
from openpyxl import load_workbook
path=r'H:\C.xlsx'
book=load_workbook(path)
writer=pd.ExcelWriter(path, engine='xlsxwriter')
writer.book=book
C.to_excel(writer,sheet_name='returns')
这给了我错误:AttributeError: 'Workbook' object has no attribute 'add_worksheet'
【问题讨论】:
-
我尝试了链接“如何使用 Pandas 在现有 excel 文件中保存新工作表?”的建议,如下所示:writer=pd.ExcelWriter(r'H:\C.xlsx', engine ='xlsxwriter') y_pred_all2.to_excel(writer,sheet_name='cc') writer.save() writer.close() from openpyxl import load_workbook path=r'H:\C.xlsx' book=load_workbook(path) writer= pd.ExcelWriter(path, engine='xlsxwriter') writer.book=book C.to_excel(writer,sheet_name='returns') 这给了我错误:AttributeError: 'Workbook' object has no attribute 'add_worksheet'
-
确实如此。使用 writer=pd.ExcelWriter(path,engine='openpyxl') 有效。非常感谢。
-
太好了,将我的评论移至答案。
标签: python xlsxwriter