[英]How to compile and save multiple Excel files in one Excel file in AWS Glue
I able to generate several Excel files and compile it using pandas.ExcelWriter on my local machine but how do I achieve the same result using AWS Glue?我能够生成多个 Excel 文件并在本地计算机上使用 pandas.ExcelWriter 对其进行编译,但如何使用 AWS Glue 获得相同的结果?
def backup_report(filename):
with pd.ExcelWriter(local_excel_file_path + '/{0}.xlsx'.format(filename), engine='xlsxwriter') as writer:
# ------- insert metrics that x need calculation -------
op_AdReq_fnl.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=2, header=True)
op_dirt_imps.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=8, header=False)
op_prog_imps.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=12, header=False)
op_hse_imps.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=16, header=False)
op_FillRt_fnl.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=29, header=False)
op_dirt_rvn.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=57, header=False)
op_prog_rvn.to_excel(writer, sheet_name='weekly', index=True, startcol=0, startrow=61, header=False)
workbook = writer.book
worksheet = writer.sheets['weekly']
# ------- report date -------
update_dt = date.today().strftime("%d %b %Y")
worksheet.write(0,0,'Last Update: '+ update_dt)
report_dt = start_dt + " - " + end_dt
worksheet.write(0, 1, '('+ report_dt + ')')
# ------- write index names -------
metric_format = workbook.add_format({'bold': False, 'font_color': 'black', 'align': 'left', 'valign': 'vcenter'})
metric_format.set_border()
metric_format2 = workbook.add_format({'bold': True, 'font_color': 'black', 'align': 'left', 'valign': 'vcenter'})
metric_format2.set_border()
metric_format2.set_bg_color('silver')
fmt_number = workbook.add_format({'num_format': '#,,##0'})
fmt_percent = workbook.add_format({'num_format': '0%'})
writer.save()
writer.close()
I successfully use the pd.Excelwriter
in AWS Glue.我在 AWS Glue 中成功使用了pd.Excelwriter
。
def backup_report(filename):
with io.BytesIO() as output:
with pd.ExcelWriter(output, engine='xlsxwriter') as writer:
.
.
.
writer.save()
writer.close()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.