Reproducibility-Optimized Test Statistic (ROTS)

The ROTS R-package implements the reproducibility-optimized test statistic (ROTS) for ranking genes or proteins in terms of differential expression in two-group comparisons. The procedure selects a ranking statistic from a family of t-type statistics by maximizing the overlap of the top-ranked genes or proteins across a set of group-preserving bootstrap re-samples of the original dataset.


Before installing ROTS, you need to have R. For the installation of R, please refer to the R project website (

Download the ROTS package from the links below. Linux users can install ROTS from the source by typing at the directory where the file is saved:

R CMD INSTALL ROTS_1.1.2.tar.gz

Windows users may use the ‘Install package(s) from local zip files …’ option in the Packages menu of the R-GUI to browse and install the pre-compiled ROTS package.


Package source: ROTS_1.1.2.tar.gz
Windows binary:
Mac OS X binary: ROTS_1.1.2.tgz
R-documentation: ROTS_1.1.1.pdf

The ROTS R-packages are made available under the terms of the GNU General Public License, which means that the source code is freely available for use within other software, but if you alter the code and distribute it, you must make the new source code freely available as well. This software is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY. In case you use the package in your work, we appreciate a citation to our ROTS publications.


L. L. Elo, S. Filén, R. Lahesmaa and T. Aittokallio (2008) Reproducibility-optimized test statistic for ranking genes in microarray studies. IEEE/ACM Transactions on Computational Biology and Bioinformatics 5: 423-431.

L. L. Elo, J. Hiissa, J. Tuimala, A. Kallio, E. Korpelainen and T. Aittokallio (2009) Optimized detection of differential expression in global profiling experiments: case studies in clinical transcriptomic and quantitative proteomic datasets. Briefings in Bioinformatics 10: 547-555.


The following example code calculates the ROTS-statistic for the Affymetrix spike-in data, which is also included in the ROTS-package as a sample dataset:


rots.out <- ROTS(affySpikeIn, affySpikeIn.L, B=500, K=5000)

The optimized ROTS parameters and the resulting list of top genes at a specified FDR-level can be printed by typing:


summary(rots.out, fdr=0.05)

If you experience a problem or bug, please contact us.