Subcommand: squash - lczech/gappa GitHub Wiki
Perform Squash Clustering for a set of samples.
Usage: gappa analyze squash [options]
| Input | |
|---|---|
--jplace-path |
Required. TEXT:PATH(existing)=[] ...List of jplace files or directories to process. For directories, only files with the extension .jplace[.gz] are processed. |
| Settings | |
--exponent |
FLOAT=1Exponent for KR integration. |
--point-mass |
FLAGTreat every pquery as a point mass concentrated on the highest-weight placement. In other words, ignore all but the most likely placement location (the one with the highest LWR), and set its LWR to 1.0. |
--ignore-multiplicities |
FLAGSet the multiplicity of each pquery to 1.0. For phylogenetic placement, the multiplicity is the equivalent of read abundances. This flag hence ignores the read abundances, treating each pquery as a singleton. |
| Color | |
--color-list |
TEXT=BuPuBkList of colors to use for the palette. Can either be the name of a color list, a file containing one color per line, or an actual comma-separated list of colors. Colors can be specified in the format #rrggbb using hex values, or by web color names. |
--reverse-color-list |
FLAGIf set, the order of colors of the --color-list is reversed. |
--log-scaling |
FLAGIf set, the sequential color list is logarithmically scaled instead of linearily. |
| Output | |
--out-dir |
TEXT=.Directory to write output files to. |
--file-prefix |
TEXTFile prefix for output files. Most gappa commands use the command name as the base name for file output. This option amends the base name, to distinguish runs with different data. |
--file-suffix |
TEXTFile suffix for output files. Most gappa commands use the command name as the base name for file output. This option amends the base name, to distinguish runs with different data. |
| Tree Output | |
--write-newick-tree |
FLAGIf set, the tree is written to a Newick file. This format cannot store color information. |
--write-nexus-tree |
FLAGIf set, the tree is written to a Nexus file. This can for example be opened in FigTree. |
--write-phyloxml-tree |
FLAGIf set, the tree is written to a Phyloxml file. This can for example be used in Archaeopteryx. |
--write-svg-tree |
FLAGIf set, the tree is written to a SVG file. This gives a file for vector graphics editors. |
| Newick Tree Output | |
--newick-tree-branch-length-precision |
INT=6 Needs: --write-newick-treeNumber of digits to print for branch lengths in Newick format. |
--newick-tree-quote-invalid-chars |
FLAG Needs: --write-newick-treeIf set, node labels that contain characters that are invalid in the Newick format (i.e., spaces and :;()[],{}) are put into quotation marks. If not set (default), these characters are instead replaced by underscores, which changes the names, but works better with most downstream tools. |
| Svg Tree Output | |
--svg-tree-shape |
TEXT:{circular,rectangular}=circular Needs: --write-svg-treeShape of the tree. |
--svg-tree-type |
TEXT:{cladogram,phylogram}=cladogram Needs: --write-svg-treeType of the tree, either using branch lengths ( phylogram), or not (cladogram). |
--svg-tree-stroke-width |
FLOAT=5 Needs: --write-svg-treeSvg stroke width for the branches of the tree. |
--svg-tree-ladderize |
FLAG Needs: --write-svg-treeIf set, the tree is ladderized. |
| Global Options | |
--allow-file-overwriting |
FLAGAllow to overwrite existing output files instead of aborting the command. |
--verbose |
FLAGProduce more verbose output. |
--threads |
UINTNumber of threads to use for calculations. |
--log-file |
TEXTWrite all output to a log file, in addition to standard output to the terminal. |
Performs Squash Clustering. The command is a re-implementation of guppy squash, see there for more details.
The main output of the command is a cluster hierarchy tree that shows which input jplace samples are clustered close to each other. Although the tree is written to Newick format, it is not a phylogeny, as its tips represent samples (jplace files). The inner node labels are numbered consecutively starting at n, with n being the number of samples used as input.
If the --write-...-tree options are used, the mass trees representing the samples (tips of the cluster tree) and the mass trees of the inner nodes (average masses of the corresponding tips) are written for visualization. Their numbering is 0 to n-1 for the tips (samples), and n to 2n-2 for the inner nodes (cluster averages). These trees can help to explore how and why the samples were clustered during the algorithm.
When using this method, please do not forget to cite
Lucas Czech, Pierre Barbera, Alexandros Stamatakis. Genesis and Gappa: Processing, Analyzing and Visualizing Phylogenetic (Placement) Data. Bioinformatics, 2020. doi:10.1093/bioinformatics/btaa070
Frederick Matsen, Steven Evans. Edge Principal Components and Squash Clustering: Using the Special Structure of Phylogenetic Placement Data for Sample Comparison. PLOS ONE, 2013. doi:10.1371/journal.pone.0056859