Pandas xlsxwriter для создания превосходных данных и реализации форматирования по ширине столбцов и границам - PullRequest
0 голосов
/ 02 января 2019

Фон :

Я использую Pandas и у меня есть фрейм данных 'df' , который я собираюсь записать в лист Excel.Я использую приведенный ниже код и получаю выходной лист Excel, как показано в прикрепленном снимке 'Present.JPG' : Present.JPG

import pandas as pd
import xlsxwriter

writer = pd.ExcelWriter('output.xlsx', engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1')
writer.save()

Описание проблемы: Я хотел бы записать кадр данных в Excel и включить следующие изменения.

1) Избавиться от первого столбца с указанием индекса
2) Реализовать перенос текста по всем столбцам (для автоматического изменения ширины каждого столбца)
3) Построить толстую рамку от A1 до C4, D1на F4 и столбец G

В конце концов я бы хотел, чтобы лист Excel выглядел так, как показано на снимке 'Desired.JPG' : Desired.JPG

Пробовал до сих пор: Я попробовал следующие команды, но они перезаписывают границу содержимого ячеек.Кроме того, я не могу понять, как расширить границы (и перенос текста) за пределы одной ячейки.

writer = pd.ExcelWriter("output.xlsx", engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1')
workbook=writer.book
worksheet= writer.sheets['Sheet1']

full_border = workbook.add_format({"border":1,"border_color": "#000000"})
link_format = workbook.add_format({'text_wrap': True})

worksheet.write("D3", None, full_border)
worksheet.write("E1", None, link_format)

writer.save()
...