.. _prepare: Mikado prepare ============== This is the first executive step of the Mikado pipeline. It will accomplish the following goals: #. Collect annotations from disparate annotation files. #. Remove redundant assemblies, ie, assemblies that are *identical* across the various input files. #. Determine the strand of the transcript junctions. #. Ensure uniqueness of the transcript names. #. Order the transcript by locus. #. Extract the transcript sequences. Usage ~~~~~ ``Mikado prepare`` allows to override some of the parameters present in the configuration file through command line options, eg. the input files. Notwithstanding, in the interest of reproducibility we advise to configure everything through the configuration file and supply it to Mikado prepare without further modifications. Available parameters: * *json-conf*: the most important parameter. This is the configuration file created through :ref:`Mikado configure `. * *fasta*: reference genome. Required, either through the command line or through the configuration file. * *out*: Output GTF file, with the collapsed transcripts. * *out_fasta*: Output FASTA file of the collapsed transcripts. * *start-method*: :ref:`multiprocessing start method `. * *verbose*, *quiet*: flags to set the verbosity of Mikado prepare. It is generally not advised to turn the verbose mode on, unless there is a problem to debug, given the verbosity of the output. * *strand-specific*: If set, all assemblies will be treated as strand-specific. * *strand-specific-assemblies*: comma-separated list of strand specific assemblies. * *list*: in alternative to specifying all the information on the command line, it is possible to give to Mikado a *tab-separated* file with the following contents: #. Location of the file #. label for the file #. whether that assembly is strand-specific or not (write True/False) #. Optionally, a bonus/malus to be associated to transcripts coming from that assembly. * *log*: log file. Optional, by default Mikado will print to standard error. * *lenient*: flag. If set, transcripts without any canonical splice site will be output as well. By default, they would be discarded. * *single*: flag that disables multiprocessing. Mostly useful for debug purposes. * *strip-cds*: some aligners (eg GMAP) will try calculate a CDS on the fly for alignments. Use this flag to discard such CDS sections and retain only the cDNA information. * *minimum_length*: minimum length of the transcripts to be kept. Command line usage: .. code-block:: bash $ mikado prepare --help usage: Mikado prepare [-h] [--fasta FASTA] [-v | -q] [--start-method {fork,spawn,forkserver}] [-s | -sa STRAND_SPECIFIC_ASSEMBLIES] [--list LIST] [-l LOG] [--lenient] [-m MINIMUM_LENGTH] [-p PROCS] [-scds] [--labels LABELS] [--single] [-od OUTPUT_DIR] [-o OUT] [-of OUT_FASTA] [--json-conf JSON_CONF] [-k] [gff [gff ...]] positional arguments: gff Input GFF/GTF file(s). optional arguments: -h, --help show this help message and exit --fasta FASTA Genome FASTA file. Required. -v, --verbose -q, --quiet --start-method {fork,spawn,forkserver} Multiprocessing start method. -s, --strand-specific Flag. If set, monoexonic transcripts will be left on their strand rather than being moved to the unknown strand. -sa STRAND_SPECIFIC_ASSEMBLIES, --strand-specific-assemblies STRAND_SPECIFIC_ASSEMBLIES Comma-delimited list of strand specific assemblies. --list LIST Tab-delimited file containing rows with the following format: