Mercurial > repos > bimib > marea_2_0
changeset 196:9d2f9c470ba8 draft
Uploaded
author | luca_milaz |
---|---|
date | Fri, 05 Jul 2024 07:01:34 +0000 |
parents | 41ac2759658a |
children | 6450c450253e |
files | marea_2_0/flux_sampling.py |
diffstat | 1 files changed, 21 insertions(+), 28 deletions(-) [+] |
line wrap: on
line diff
--- a/marea_2_0/flux_sampling.py Fri Jul 05 06:53:43 2024 +0000 +++ b/marea_2_0/flux_sampling.py Fri Jul 05 07:01:34 2024 +0000 @@ -148,7 +148,7 @@ pass -def model_sampler(model_input:str, model_name:str)->None: +def model_sampler(model_input:str, model_name:str, df_mean:pd.DataFrame, df_median:pd.DataFrame, df_quantiles:pd.DataFrame)->None: model = load_custom_model( utils.FilePath.fromStrPath(model_input), utils.FilePath.fromStrPath(model_name).ext) @@ -165,15 +165,11 @@ elif ARGS.algorithm == 'CBS': CBS_sampler(model, name, ARGS.n_samples, ARGS.n_batches, ARGS.seed) - fluxes_statistics(name, ARGS.output_types) + fluxes_statistics(name, ARGS.output_types, df_mean, df_median, df_quantiles) pass -def fluxes_statistics(model_name: str, output_types:List): - - global DF_MEAN - global DF_MEDIAN - global DF_QUANTILES +def fluxes_statistics(model_name: str, output_types:List, df_mean:pd.DataFrame, df_median:pd.DataFrame, df_quantiles:pd.DataFrame)->None: df_samples = pd.read_csv(ARGS.output_folder + model_name + '.csv', sep = '\t') for output_type in output_types: @@ -182,13 +178,13 @@ df_temp = df_temp.to_frame().T df_temp = df_temp.reset_index(drop=True) df_temp.index = [model_name] - DF_MEAN = pd.concat([DF_MEAN, df_temp]) + df_mean = pd.concat([df_mean, df_temp]) elif(output_type == "median"): df_temp = df_samples.median() df_temp = df_temp.to_frame().T df_temp = df_temp.reset_index(drop=True) df_temp.index = [model_name] - DF_MEDIAN = pd.concat([DF_MEDIAN, df_temp]) + df_median = pd.concat([df_median, df_temp]) elif(output_type == "quantiles"): df_quantile = df_samples.quantile([0.25, 0.5, 0.75]) newRow = [] @@ -204,7 +200,7 @@ df_temp.loc[0] = newRow df_temp = df_temp.reset_index(drop=True) df_temp.index = [model_name] - DF_QUANTILES = pd.concat([DF_QUANTILES, df_temp]) + df_quantiles = pd.concat([df_quantiles, df_temp]) if("fluxes" not in output_types): @@ -266,28 +262,25 @@ models_name = ARGS.name.split(",") ARGS.output_types = ARGS.output_type.split(",") - global DF_MEAN - DF_MEAN = pd.DataFrame() - - global DF_MEDIAN - DF_MEDIAN= pd.DataFrame() - - global DF_QUANTILES - DF_QUANTILES= pd.DataFrame() + + df_mean = pd.DataFrame() + df_median= pd.DataFrame() + df_quantiles= pd.DataFrame() - Parallel(n_jobs=num_processors)(delayed(model_sampler)(model_input, model_name) for model_input, model_name in zip(models_input, models_name)) + Parallel(n_jobs=num_processors)(delayed(model_sampler)(model_input, model_name, + df_mean, df_median, df_quantiles) for model_input, model_name in zip(models_input, models_name)) - DF_MEAN = DF_MEAN.fillna(0.0) - DF_MEAN = DF_MEAN.sort_index() - write_to_file(DF_MEAN, "mean") + df_mean = df_mean.fillna(0.0) + df_mean = df_mean.sort_index() + write_to_file(df_mean, "mean") - DF_MEDIAN = DF_MEDIAN.fillna(0.0) - DF_MEDIAN = DF_MEDIAN.sort_index() - write_to_file(DF_MEDIAN, "median") + df_median = df_median.fillna(0.0) + df_median = df_median.sort_index() + write_to_file(df_median, "median") - DF_QUANTILES = DF_QUANTILES.fillna(0.0) - DF_QUANTILES = DF_QUANTILES.sort_index() - write_to_file(DF_QUANTILES, "quantiles") + df_quantiles = df_quantiles.fillna(0.0) + df_quantiles = df_quantiles.sort_index() + write_to_file(df_quantiles, "quantiles") ############################################################################## if __name__ == "__main__":