Skip to content
Snippets Groups Projects
__main__.py 1.51 KiB
#!/usr/bin/env python3

# -*- coding: UTF-8 -*-

"""
Description: This file contains main function used to analyse the \
nucleotide composition of co-localised exons
"""

from .config import ConfigNt
from .make_nt_correlation import create_all_frequency_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'])
def launcher(weight: int = 1, global_weight: int = 0, ft_type: str = 'nt',
             same_gene: bool = False,
             logging_level: str = "DISABLE"):
    """
    Launch the creation of density file.

    :param weight: The weight of interaction to consider (default 1)
    :param global_weight: The global weight to consider. if \
    the global weight is equal to 0 then then density figure are calculated \
    by project, else all project are merge together and the interaction \
    seen in `global_weight` project are taken into account (default 0)
    :param ft_type: The feature type of interest (default 'nt')
    :param same_gene: Say if we consider as co-localised, exons within the \
    same gene (True) or not (False) (default False)
    :param logging_level: The level of data to display (default 'DISABLE')
    """
    get_interactions_number(weight, logging_level)
    create_all_frequency_figures(ConfigNt.cpu, weight, global_weight, ft_type,
                                 same_gene, logging_level)


launcher()