Pandas保存带样式DataFrame至Excel时,保留原有工作表且避免文件损坏的解决方案求助
Pandas保存带样式DataFrame至Excel时,保留原有工作表且避免文件损坏的解决方案求助
大家好,我最近在尝试把带样式的DataFrame保存到Excel文件时遇到了两个头疼的问题,想请大家帮忙看看怎么解决:
我想要实现的是把处理好的带加粗样式的DataFrame保存到Excel的指定工作表,同时保留文件里原有的其他工作表。
首先我试了这段代码,想通过追加模式写入:
def bold_rows(row): if any('Savings' in str(val) for val in row): return ['font-weight: bold'] * len(row) else: return [''] * len(row) styled_df = df_new.style.apply(bold_rows, axis=1) with pd.ExcelWriter(file_name, engine='openpyxl',mode= 'a',if_sheet_exists='replace') as writer: styled_df.to_excel(writer, sheet_name='RECAP', index=False)
结果Excel文件直接损坏了,根本打不开也保存不了。
后来我又试了直接写入的方式:
styled_df.to_excel(file_name,sheet_name='RECAP', engine='openpyxl', index=False)
这次文件能保存,但原来Excel里的其他工作表全被删掉了,这也不是我想要的结果。
我还查过相关的问题,尝试用writer.save()的方式,但对我这个场景好像不管用。
有没有大佬能指点一下,怎么才能既保留原有的所有工作表,又能成功把带样式的DataFrame写入指定工作表,还不会把文件搞坏呀?谢谢大家了!
备注:内容来源于stack exchange,提问作者Rodel Silvano
相关产品推荐
相关产品推荐

