excel中的输出如下:
所以现在我只想摆脱索引列并修改标头格式。 为此,我将使用参数:
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)
但是输出看起来不正确:
那要怎么解决呢?
整个代码如下:
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()
答案 0 :(得分:1)
您的列索引已关闭1。使用:
worksheet.write(0, col_num, value, header_format)
代替:
worksheet.write(0, col_num + 1, value, header_format)
答案 1 :(得分:0)
以下代码应该起作用:
import csv
df.to_excel(filename,index=False)