R/qtl2 (aka qtl2) is a reimplementation of the QTL analysis software R/qtl, to better handle high-dimensional data and complex cross designs. It is split into qtl2geno (for calculating genotype probabilities, imputations, and genetic maps), qtl2scan (for QTL genome scans and related calculations), and qtl2plot (for data visualization). A further package, qtl2convert, contains functions for converting data among the R/qtl2, DOQTL, and R/qtl formats, for example to convert genotype probabilities produced by DOQTL to the format needed by qtl2scan, or to convert qtl2scan results to the format produced by scanone in R/qtl, so that they may be graphed with the R/qtl functions.


We’re considering revising many of the central data structures in R/qtl2. There is much that is useful here, but many of the details are likely to change.


R/qtl2 is early in development and so is not yet available on CRAN.

You can install R/qtl2 from GitHub.

You first need to install the devtools package, plus a set of package dependencies: yaml, jsonlite, data.table, and RcppEigen. (Additional, secondary dependencies will also be installed)

install.packages(c("devtools", "yaml", "jsonlite", "data.table", "RcppEigen"))

Then, install R/qtl2 using devtools::install_github().

install_github(paste0("rqtl/qtl2", c("geno", "scan", "plot", "convert")))



The qtl2geno, qtl2scan, and qtl2plot packages are free software; you can redistribute them and/or modify them under the terms of the GNU General Public License, version 3, as published by the Free Software Foundation.

These programs are distributed in the hope that they will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See the GNU General Public License for more details.

A copy of the GNU General Public License, version 3, is available at http://www.r-project.org/Licenses/GPL-3

Sources on github: