pandas.to_csv() 带有一些粗体字

oku*_*oub 3 python excel dataframe python-3.x pandas

我有数据框

df = [["A1" "B2" "C3"] ["D4" "E5" "F6"]]
Run Code Online (Sandbox Code Playgroud)

(所有文本都是字符串)我想将它保存到一个文件中,并使用df.to_csv()彩色/粗体文本“E5”。可以做到吗?

rah*_*f23 5

逗号分隔值 (csv) 文件不包含任何格式信息,因此您需要使用 Excel 格式来完成所需的操作。您可以执行以下操作:

import pandas as pd

# Create a Pandas dataframe from some data.
df = pd.DataFrame([["A1", "B2", "C3"], ["D4", "E5", "F6"]])

# Create a Pandas Excel writer using XlsxWriter as the engine.
writer = pd.ExcelWriter("test.xlsx", engine='xlsxwriter')

# Get the xlsxwriter workbook and worksheet objects.
workbook  = writer.book
worksheet = workbook.add_worksheet('Sheet1')

# Add a header format.
header_format = workbook.add_format({'bold': True})

# Write the column headers with the defined format.
for i, row in enumerate(df.values):
    for j, val in enumerate(row):
        if val=='E5': worksheet.write(i, j, val, header_format)
        else: worksheet.write(i, j, val)

# Close the Pandas Excel writer and output the Excel file.
writer.save()
Run Code Online (Sandbox Code Playgroud)

这将输出:

在此处输入图片说明