在 Excel 的多张纸中加载数据帧时出现问题
Issue in loading dataframes in multiple sheets of Excel
我的代码正在返回多个数据帧,我希望将这些数据帧导出到单个 excel 文件的多张表中。研究了一下,发现可以用ExcelWriter来实现。但是,当我 运行 此代码时,只有我的第一个数据帧被导出到 excel 文件中,其余数据帧不会进入 excel.
writer = pd.ExcelWriter('file.xlsx', engine='xlsxwriter')
for k in l:
with udaExec.connect(method="odbc",system=host, username=username,password=password, driver="Teradata") as connect:
QP = pd.read_sql_query(k,connect)
with udaExec.connect(method="odbc",system=host1, username=username1,password=password1, driver="Teradata") as connect:
QD= pd.read_sql_query(k,connect)
Final_result = pd.merge(QP,QD,on='ID', how='outer', indicator = True)
cnt = cnt+1
sh = f'''she_{cnt}'''
print(sh)
Final_result.to_excel(writer, sheet_name = sh)
writer.save()
我想将多个数据帧导出到多个excel。
您需要将 save()
移出循环。
我的代码正在返回多个数据帧,我希望将这些数据帧导出到单个 excel 文件的多张表中。研究了一下,发现可以用ExcelWriter来实现。但是,当我 运行 此代码时,只有我的第一个数据帧被导出到 excel 文件中,其余数据帧不会进入 excel.
writer = pd.ExcelWriter('file.xlsx', engine='xlsxwriter')
for k in l:
with udaExec.connect(method="odbc",system=host, username=username,password=password, driver="Teradata") as connect:
QP = pd.read_sql_query(k,connect)
with udaExec.connect(method="odbc",system=host1, username=username1,password=password1, driver="Teradata") as connect:
QD= pd.read_sql_query(k,connect)
Final_result = pd.merge(QP,QD,on='ID', how='outer', indicator = True)
cnt = cnt+1
sh = f'''she_{cnt}'''
print(sh)
Final_result.to_excel(writer, sheet_name = sh)
writer.save()
我想将多个数据帧导出到多个excel。
您需要将 save()
移出循环。