通过样式将pandas DataFrame插入现有的Excel工作表中

时间:2018-08-29 10:13:13

标签: python excel pandas python-3.5

我已经看到了有关如何使用openpyxl将pandas DataFrame添加到现有工作表中的答案,如下所示:

from openpyxl import load_workbook, Workbook
import pandas as pd

df = pd.DataFrame(data=["20-01-2018",4,9,16,25,36],columns=["Date","A","B","C","D","E"])
path = 'filepath.xlsx'

writer = pd.ExcelWriter(path, engine='openpyxl')
writer.book = load_workbook(path)
writer.sheets = dict((ws.title,ws) for ws in writer.book.worksheets)

df.to_excel(writer,sheet_name="Sheet1", startrow=2,index=False, header=False)
writer.save()

但是,我需要为背景数据设置突出显示颜色。有没有一种方法可以在不将数据框更改为列表的情况下执行此操作-也要尝试维护日期格式。

谢谢

2 个答案:

答案 0 :(得分:0)

您可以创建一个函数在所需的单元格中突出显示

def highlight_style():
    # provide your criteria for highlighting the cells here
    return ['background-color: red']

然后将突出显示功能应用于数据框...

df.style.apply(highlight_style)

在此之后,当您将其写入到excel时,它应该可以根据需要运行=)

答案 1 :(得分:0)

感谢Andre的帮助,我对它进行了排序。您可以这样导出结果:

df.style.set_properties(**{'background-color':'red'}).to_excel(writer,sheet_name="Sheet1", startrow=2,index=False, header=False)
writer.save()

谢谢!