![](/img/trans.png)
[英]Pandas: How to write custom time duration format to Excel file with pd.ExcelWriter via Openpyxl
[英]Format excel file with colors pd.ExcelWriter
我有一個數據框df
df
Out[15]:
Subject ID
StartDate
2017-11-06 ID1
2017-11-07 ID1
2017-11-08 ID2
2017-11-10 ID3
然后將其保存在Excel文件中
writer = pd.ExcelWriter(os.path.join(folders_path,'summary.xls'))
df.to_excel(writer,'Sheet1')
writer.save()
但是我想根據Subject ID
設置行的顏色,即我希望每個ID都有不同的顏色
您必須使用“ xlsxwriter”引擎並定義格式。
以下是可能的代碼段:
#!/usr/bin/env python3
from datetime import date
import pandas as pd
data = [['2017-11-06', 'ID1'],
['2017-11-07', 'ID1'],
['2017-11-08', 'ID2'],
['2017-11-10', 'ID3']]
df = pd.DataFrame(data, columns=['StartDate', 'Subject ID'])
print(df)
writer = pd.ExcelWriter('/home/spomared/tmp/summary.xls', engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1', index=False)
workbook = writer.book
worksheet = writer.sheets['Sheet1']
my_formats = {'"ID1"': '#FF0000',
'"ID2"': '#00FF00',
'"ID3"': '#0000FF'}
for val, color in my_formats.items():
fmt = workbook.add_format({'font_color': color})
worksheet.conditional_format('B2:B5', {'type': 'cell',
'criteria': '=',
'value': val,
'format': fmt})
writer.save()
這是輸出的Excel文件:
您可以在http://xlsxwriter.readthedocs.io/working_with_conditional_formats.html上找到一些條件格式的參考。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.