HyPhy - a-lud/nf-pipelines GitHub Wiki
This pipeline implements the commandline version of HyPhy
. HyPhy
is a tool with a range of models designed to test
different evolutionary hypotheses. Have a read of the HyPhy
website for a detailed run-down of the methods available.
This pipeline does not do any post-processing of the results. By default, HyPhy
generates a markdown formatted results log, along
with a JSON results file. Therefore, the results can be aggregated and processed in R/Python.
The current version of the HyPhy
pipeline has the following arguments:
--msa string Directory path to MSA files. Extension must be '.fa' or '.fasta'.
--tree string File path to phylogenetic tree with 'test' branches marked using '{}' notation. E.g. (sample1, sample2{Test});.
--testLabel string What is the branch label ('{}') listed in the tree file.
--analysis string Which HyPhy analysis/analyses to run. Options: RELAX.
The arguments are explained in more detail below.
The --msa
argument expects a directory path, which points to a directory containing multiple sequence alignments (MSA).
The pipeline will match all files in the directory path that are MSAs (must have extension *.{fa,fasta}
and bank them
for processing.
Nearly all selection testing tools expect a phylogenetic tree file. As such, the --tree
argument expects a filepath to
a tree-file that is in newick format. Some selection tests enable 'marked branches', which can be specified using curly
braces like the the following example:
(sample_1, (sample_2, sample_3{test}));
Here, sample 3 is marked as the test branch. Branch labels can also be specified at nodes.
The --testLabel
argument directly relates to the tree labels mentioned above. This argument expects a string that matches
the tree labels the user has used in their newick tree. If the --testLabel
string differs to the branch-labels is in the --tree
argument, the program will error.
For example, using the tree from above, the following arguments will work
# Arguments
--tree /path/to/tree_above.nwk
--testLabel 'test'
While this will cause an error
# Arguments
--tree /path/to/tree_above.nwk
--testLabel 'Foreground'
There is no Foreground
string in example tree, meaning HyPhy
will not be able to find the test species.
Finally, the --analysis
argument specifies which HyPhy
analysis to run. Currently, ONLY RELAX
has been implemented.