Как избавиться от столбцов индекса и начать писать определенный заголовок в первом столбце - PullRequest
0 голосов
/ 03 июля 2019

Вывод в Excel выглядит следующим образом:

enter image description here

Так что теперь я просто хочу избавиться от столбца индекса и изменить формат заголовка. Для этого я буду использовать параметры:

df.to_excel(writer,'Sheet1',startrow=1, header=False,index=False)

и сейчас:

# Write the column headers with the defined format.
for col_num, value in enumerate(df.columns.values):
    worksheet.write(0, col_num + 1, value, header_format)

Но вывод выглядит неправильно:

Так, как бы это исправить?

enter image description here

Весь код ниже:

import pandas as pd
from pandas import ExcelWriter
from pandas import ExcelFile
import numpy as np

df = pd.DataFrame({'Column1':['Roman','Nick','Jarrod','Spencer','Sasha'],
                   'Column2':['Red','Blue','Green','Yellow','Orange']})


writer = ExcelWriter('TestFile.xlsx')

df.to_excel(writer,'Sheet1',startrow=1, header=False,index=False)

# Get the xlsxwriter workbook and worksheet objects.
workbook  = writer.book
worksheet = writer.sheets['Sheet1']
# Add a header format.
header_format = workbook.add_format({
    'bold': True,
    'text_wrap': False,
    'valign': 'top',
    'fg_color': '#D7E4BC',
    'border': 1})
# Write the column headers with the defined format.
for col_num, value in enumerate(df.columns.values):
    worksheet.write(0, col_num + 1, value, header_format)
# Close the Pandas Excel writer and output the Excel file.
writer.save()

Ответы [ 2 ]

1 голос
/ 03 июля 2019

Ваш индекс столбца отключен на 1. Используйте:

worksheet.write(0, col_num, value, header_format)

Вместо:

worksheet.write(0, col_num + 1, value, header_format)
0 голосов
/ 03 июля 2019

Следующий код должен работать:

import csv
df.to_excel(filename,index=False)
...