diff --git a/src/nt_composition/__main__.py b/src/nt_composition/__main__.py index 17d0d47fa2987fc61a7586d3a45d68317899caa7..3f931ee78885b9fd730d25da4dddb73993b50b96 100644 --- a/src/nt_composition/__main__.py +++ b/src/nt_composition/__main__.py @@ -9,15 +9,18 @@ nucleotide composition of co-localised exons from .config import ConfigNt from .make_nt_correlation import create_all_frequency_figures +from .distance import create_all_distance_figures from .get_projects_interaction import get_interactions_number import lazyparser as lp @lp.flag(same_gene=True) -@lp.parse(weight='weight > 0', ft_type=['nt', 'dnt', 'tnt', 'codon', 'aa', - 'properties']) +@lp.parse(weight='weight > 0', + ft_type=['nt', 'dnt', 'tnt', 'codon', 'aa', 'properties'], + kind=["density", "distance"]) def launcher(weight: int = 1, global_weight: int = 0, ft_type: str = 'nt', same_gene: bool = False, compute_mean: bool = True, + iteration: int = 10000, kind: str = 'density', logging_level: str = "DISABLE"): """ Launch the creation of density file. @@ -32,12 +35,25 @@ def launcher(weight: int = 1, global_weight: int = 0, ft_type: str = 'nt', same gene (True) or not (False) (default False) :param compute_mean: True to compute the mean frequency of co-localised \ exons, false to only compute the frequency of one co-localized exons. \ - (default True) + This parameters is only used when kind = "density". (default True) + :param iteration: Number of control co-localisation to make. This \ + parameter is only used when kind = "distance": (Default : 10000) + :param kind: The type of analysis to make. 'density' to create \ + correlation figure between the feature frequency of an exon and the \ + frequency of the same feature for other co-localized exons. 'distance' \ + to check if the frequencies of co-localized exon are closer than \ + randomly expected. (default : 'density'). :param logging_level: The level of data to display (default 'DISABLE') """ get_interactions_number(weight, same_gene, logging_level) - create_all_frequency_figures(ConfigNt.cpu, weight, global_weight, ft_type, - same_gene, compute_mean, logging_level) + if kind == "density": + create_all_frequency_figures(ConfigNt.cpu, weight, global_weight, + ft_type, same_gene, compute_mean, + logging_level) + else: + create_all_distance_figures(ConfigNt.cpu, weight, global_weight, + ft_type, same_gene, iteration, + logging_level) launcher() \ No newline at end of file