From c86cfaf6e44072da2a12a81e4850bd89de3fe714 Mon Sep 17 00:00:00 2001
From: mlmial <ml.miale@icloud.com>
Date: Mon, 7 Aug 2023 00:03:57 +0200
Subject: [PATCH] made seed variation runable

---
 cami_src/cami_suite.py                        | 23 +++++++++++++++----
 .../seed_variation_script.py                  | 16 +++++++------
 2 files changed, 27 insertions(+), 12 deletions(-)

diff --git a/cami_src/cami_suite.py b/cami_src/cami_suite.py
index 7b33336..2ba4f14 100644
--- a/cami_src/cami_suite.py
+++ b/cami_src/cami_suite.py
@@ -357,14 +357,27 @@ class cami():
         for tool in result_sets:
             result_sets[tool] -= set(self.seed_lst)
 
-        params_tr = {'hub_penalty': [0.25],
+        params_0 = {'function': {'union':cami_v1.make_union, 
+                                 'intersection':cami_v1.make_intersection,
+                                 'first_neighbours': cami_v1.make_first_neighbor_result_set}
+                    }
+
+        params_tr1 = {'hub_penalty': [0.5],
                      'damping_factor': [0.75],
                      'confidence_level': [0.8],
                      'ranking': ['trustrank'],
-                     'function': {'cami_v3': cami_v3.run_cami}}
-
-        cami_setting_list = generate_param_combinations(params_tr)
-
+                     'function': {'cami_v2': cami_v2.run_cami}}
+       
+        params_tr2 = {'hub_penalty': [0.5],
+                     'damping_factor': [0.85],
+                     'confidence_level': [0.65],
+                     'ranking': ['trustrank'],
+                     'function': {'cami_v3': cami_v3.run_cami}
+       }
+        cami_setting_list = generate_param_combinations(params_0)+\
+                            generate_param_combinations(params_tr1)+\
+                            generate_param_combinations(params_tr2)
+                            
         camis = {}
         for setting in cami_setting_list:
             if setting[1]:
diff --git a/cami_src/evaluation_scripts/seed_variation_script.py b/cami_src/evaluation_scripts/seed_variation_script.py
index aecc9cb..3f24ee9 100644
--- a/cami_src/evaluation_scripts/seed_variation_script.py
+++ b/cami_src/evaluation_scripts/seed_variation_script.py
@@ -52,10 +52,12 @@ def make_seedvariation(cami, n_iterations, removal_frac=0.2, vis=False, plot=Tru
             for tool in prediction_tools:
                 res_table.write(f'\t{tool}_msr_ks_pvalue')
             
-            with open(os.path.join(cami.tmp_dir, f'{used_tools[0]}_{cami.uid}_relevance_scores.tsv)'), 'r') as f:
-                for line in f:
-                    val_name = line.split('\t')[0]
-                    redisc_table.write(f'\t{val_name}')
+            # if relevance scores file exsits:
+            if os.path.exists(os.path.join(cami.tmp_dir, f'{used_tools[0]}_{identifier}_relevance_scores.tsv)')):
+                with open(os.path.join(cami.tmp_dir, f'{used_tools[0]}_{identifier}_relevance_scores.tsv)'), 'r') as f:
+                    for line in f:
+                        val_name = line.split('\t')[0]
+                        redisc_table.write(f'\t{val_name}')
             res_table.write('\n')
             # result dictionaries of the form {tool:list(value for each iteration)}
             
@@ -141,8 +143,8 @@ def make_seedvariation(cami, n_iterations, removal_frac=0.2, vis=False, plot=Tru
                     p_val = kolmogorov_smirnoff.calculate_ks_p_value(list(module_size_dict[tool]), 
                                                                      list(module_size_dict[pred_tool]))
                     res_table.write(f'\t{p_val}')
-                    
-                with open(os.path.join(cami.tmp_dir, f'{tool}_{cami.uid}_relevance_scores.tsv)'), 'r') as f:
+                if os.path.exists(os.path.join(cami.tmp_dir, f'{used_tools[0]}_{identifier}_relevance_scores.tsv)')): 
+                  with open(os.path.join(cami.tmp_dir, f'{tool}_{identifier}_relevance_scores.tsv'), 'r') as f:
                     for line in f:
                         rel_score = line.split('\t')[1].strip()
                         res_table.write(f'\t{rel_score}')
@@ -247,4 +249,4 @@ def make_seedvariation(cami, n_iterations, removal_frac=0.2, vis=False, plot=Tru
         fig1.savefig(f'{cami.output_dir}/00_{identifier}_seed_variation_result.png', bbox_inches="tight")
         plt.close(fig1)
         print(f'Violin plot saved under: 00_{identifier}_seed_variation_result.png')
-    return cami
\ No newline at end of file
+    return cami
-- 
GitLab