From 79bc55949775d35f86b94115199884bc3a1f9f71 Mon Sep 17 00:00:00 2001
From: Fontrodona Nicolas <nicolas.fontrodona@ens-lyon.fr>
Date: Thu, 29 Oct 2020 15:14:29 +0100
Subject: [PATCH] src/nt_composition/make_nt_correlation.py: add a distance
 parameter into get_project_colocalisation function to recover only
 interaction far from at least 10kb

---
 src/nt_composition/make_nt_correlation.py | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/nt_composition/make_nt_correlation.py b/src/nt_composition/make_nt_correlation.py
index ddbb5b18..58969b9e 100644
--- a/src/nt_composition/make_nt_correlation.py
+++ b/src/nt_composition/make_nt_correlation.py
@@ -61,7 +61,7 @@ def get_project_colocalisation(cnx: sqlite3.Connection, project: str,
                                global_weight: int, same_gene: bool,
                                get_weight: bool = False,
                                exon_bc: Optional[np.array] = None,
-                               inter_chr: bool = False,
+                               inter_chr: bool = False, distance: int = 10000,
                                level: str = "exon") -> np.array:
     """
     Get the interactions in project `project` for gene and exons
@@ -84,8 +84,11 @@ def get_project_colocalisation(cnx: sqlite3.Connection, project: str,
     """
     logging.debug(f'Recovering interaction ({os.getpid()})')
     select_add = get_select_addition(global_weight, get_weight, same_gene)
-    inter_str = " AND level = 'inter'" if inter_chr else ""
-    inter_str_t = " AND t1.level = 'inter'" if inter_chr else ""
+    inter_str = " AND level = 'inter'" \
+        if inter_chr else f"AND (level = 'inter' OR distance >= {distance})"
+    inter_str_t = " AND t1.level = 'inter'" \
+        if inter_chr \
+        else f"AND (t1.level = 'inter' OR t1.distance >= {distance})"
     if level == "gene" and not same_gene:
         logging.warning(f"When level is equal to gene then same_gene must "
                         f"be true. Setting it to True.")
-- 
GitLab