Home

Awesome

miRTrace logo <br><br>

miRTrace: a tool for quality control and tracing taxonomic origins of microRNA sequencing data

miRTrace is a new quality control and taxonomic tracing tool developed specifically for small RNA sequencing data (sRNA-Seq). Each sample is characterized by profiling sequencing quality, read length, sequencing depth and miRNA complexity and also the amounts of miRNAs versus undesirable sequences (derived from tRNAs, rRNAs and sequencing artifacts). In addition to these routine quality control (QC) analyses, miRTrace can accurately and sensitively resolve taxonomic origins of small RNA-Seq data based on the composition of clade-specific miRNAs. This feature can be used to detect cross-clade contaminations in typical lab settings. It can also be applied for more specific applications in forensics, food quality control and clinical diagnosis, for instance tracing the origins of meat products or detecting parasitic microRNAs in host serum.

miRTrace is published in Genome Biology (2018). If you use miRTrace, please cite:

Kang W; Eldfjell Y; Fromm B; Estivill X; Biryukova I; Friedländer MR, 2018. miRTrace reveals the organismal origins of microRNA sequencing data. Genome Biol 19(1):213

Video tutorial

Video tutorial

Clades identified by miRTrace

<img src="images/species_tree.png" width="50%" height="50%" />

Above is the species tree of the 14 clades with unscaled branches.

License

See release-bundle-includes/LICENCE

Manual

The miRTrace manual.

Features

The two modes of miRTrace

In the QC mode, miRTrace can be applied to the 219 animal and plant species covered by miRBase v21. The generated HTML quality control report covers the following six aspects:

In the Trace mode, you can get a Trace report showing the clade-specific miRNA types and abundances in each sample.

Potential applications:

Outputs

Requirements

Installation

Using conda

conda install -c bioconda mirtrace

From source

  1. Download the release version of miRTrace or clone this repository to build it yourself. The miRTrace package includes executable mirtrace.jar (the Java program) and mirtrace (a wrapper script written in Python). The mirtrace wrapper script can automatically determine a reasonable memory allocation (half of system RAM) and use these parameters to invoce miRTrace.jar. [Note: the wrapper script is not tested on the Windows platform.]

  2. Run miRTrace:

    • Using mirtrace wrapper script: ./mirtrace <additional parameters, see manual>. If the wrapper script is not executable, try chmod gu+x mirtrace. The amount of RAM for the java heap is set to half of the RAM of the system by default, and can be overriden with the MIRTRACE_HEAP_ALLOCATION environment variable: MIRTRACE_HEAP_ALLOCATION="8GB" ./mirtrace.
    • Using mirtrace.jar: java -jar -Xms4G -Xmx4G mirtrace.jar <additional parameters, see manual>. Change the "4" to about half of your system RAM or more. To verify that you are using the correct version of Java, run java -version.

The miRTrace manual contains examples for multiple use-cases.

If you use miRTrace for your research, please cite our paper.

Reference databases

Custom (user-generated) databases

To generate reference databases of RNA type analysis for a species not in the miRTrace package (or a different version of an existing species), use the 'generate-mirtrace-rnatype-database.py' script located in the 'bin' folder. This script as well as the associated Python-files must be made user-executable (*nix platforms).' To use the generated databases, specify a --custom-db-folder argument to the main miRTrace application.

Building miRTrace from source

miRTrace is built using Maven. The project contains Java code which is built in the compile phase and databases which are built during the generate-resources phase. The project is intended to be edited using Eclipse as IDE but no Eclipse-specific files are included in the repository.

Building a Jar

To build a complete Jar file run: mvn clean compile package. The created Jar can be found in {project directory}/target/mirtrace.jar.

Updating the version number

The version number needs to be updated in Config.java ("MIRTRACE_VERSION") and in pom.xml.

References

[1] Peterson, K.J., M.R. Dietrich, and M.A. McPeek, MicroRNAs and metazoan macroevolution: insights into canalization, complexity, and the Cambrian explosion. Bioessays, 2009. 31(7): p. 736-47.

[2] Taylor, R.S., et al., Evolutionary history of plant microRNAs. Trends Plant Sci, 2014. 19(3): p. 175-82.