From f674c106b6fc43a86f1761a2ecb2817a8c084c74 Mon Sep 17 00:00:00 2001 From: Zhanwei-Liu <337891617@qq.com> Date: Tue, 21 Nov 2023 13:46:22 +0800 Subject: [PATCH] output one combined Excel file with different sheets --- run.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/run.py b/run.py index 838f652..fc53e1b 100755 --- a/run.py +++ b/run.py @@ -82,12 +82,13 @@ def run_model(parameters, output_filename, args): ds.to_netcdf(f'{output_filename}.nc') logging.info("Results are written to %s.nc", output_filename) # Write results to excel files. - for key in ds.data_vars: - if len(ds[key].shape) == 0: - df = pd.DataFrame([ds[key].values.max()], columns=[key]) - else: - df = ds[key].to_dataframe() - df.to_excel(f'{output_filename}_{key}.xlsx', merge_cells=False) + with pd.ExcelWriter(f'{output_filename}.xlsx') as writer: + for key in ds.data_vars: + if len(ds[key].shape) == 0: + df = pd.DataFrame([ds[key].values.max()], columns=[key]) + else: + df = ds[key].to_dataframe() + df.to_excel(writer, sheet_name=key, merge_cells=False) logging.info("Results are written to separate excel files")