Learn R Programming

R/qtl2

Karl Broman

R/qtl2 (aka qtl2) is a reimplementation of the QTL analysis software R/qtl, to better handle high-dimensional data and complex cross designs.

Also see the related packages, qtl2convert (for converting data among the R/qtl2, DOQTL, and R/qtl formats), qtl2fst (for storing genotype probabilities on disk), and qtl2ggplot (for ggplot2-based data visualizations).


Installation

Install R/qtl2 from CRAN:

install.packages("qtl2")

Documentation


Citation

To cite R/qtl2 in publications, use:

Broman KW, Gatti DM, Simecek P, Furlotte NA, Prins P, Sen Ś, Yandell BS, Churchill GA (2019) R/qtl2: software for mapping quantitative trait loci with high-dimensional data and multi-parent populations. Genetics 211:495-502 doi:10.1534/genetics.118.301595


License

Licensed under GPL-3.

Copy Link

Version

Install

install.packages('qtl2')

Monthly Downloads

676

Version

0.38

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Karl Broman

Last Published

June 2nd, 2025

Functions in qtl2 (0.38)

calc_raw_geno_freq

Calculate genotype frequencies from raw SNP genotypes
check_cross2

Check a cross2 object
cbind.viterbi

Join viterbi results for different chromosomes
clean_scan1

Clean scan1 output
clean_genoprob

Clean genotype probabilities
chisq_colpairs

Chi-square test on all pairs of columns
decomp_kinship

Calculate eigen decomposition of kinship matrix
create_variant_query_func

Create a function to query variants
count_xo

Count numbers of crossovers
convert2cross2

Convert R/qtl cross object to new format
create_gene_query_func

Create a function to query genes
cbind_expand

Combine matrices by columns, expanding and aligning rows
create_snpinfo

Create snp information table for a cross
cbind.sim_geno

Join genotype imputations for different chromosomes
cbind.scan1

Join genome scan results for different phenotypes.
compare_geno

Compare individuals' genotype data
cbind.scan1perm

Combine columns from multiple scan1 permutation results
find_marker

Find markers by chromosome position
find_markerpos

Find positions of markers
compare_founder_geno

Compare founders genotype data
find_index_snp

Find name of indexed snp
drop_nullmarkers

Drop markers with no genotype data
drop_markers

Drop markers from a cross2 object
est_herit

Estimate heritability with a linear mixed model
est_map

Estimate genetic maps
genoprob_to_snpprob

Convert genotype probabilities to SNP probabilities
genoprob_to_alleleprob

Convert genotype probabilities to allele probabilities
index_snps

Create index of equivalent SNPs
guess_phase

Guess phase of imputed genotypes
get_x_covar

Get X chromosome covariates
get_common_ids

Get common set of IDs from objects
fread_csv_numer

Read a csv file that has numeric columns
max_compare_geno

Find pair with most similar genotypes
fread_csv

Read a csv file
max_scan1

Find position with maximum LOD score
lod_int

Calculate LOD support intervals
locate_xo

Locate crossovers
find_dup_markers

Find markers with identical genotype data
compare_maps

Compare two marker maps
chr_lengths

Calculate chromosome lengths
clean

Clean an object
compare_genoprob

Compare two sets of genotype probabilities
interp_genoprob

Interpolate genotype probabilities
fit1

Fit single-QTL model at a single position
find_peaks

Find peaks in a set of LOD curves
find_ibd_segments

Find IBD segments for a set of strains
n_missing

Count missing genotypes
insert_pseudomarkers

Insert pseudomarkers into a marker map
plot_lodpeaks

Plot LOD scores vs QTL peak locations
plot_coef

Plot QTL effects along chromosome
plot_compare_geno

Plot of compare_geno object.
find_map_gaps

Find gaps in a genetic map
predict_snpgeno

Predict SNP genotypes
plot_snpasso

Plot SNP associations
plot_genes

Plot gene locations for a genomic interval
maxmarg

Find genotypes with maximum marginal probabilities
maxlod

Overall maximum LOD score
plot_pxg

Plot phenotype vs genotype
plot_peaks

Plot QTL peak locations
plot_onegeno

Plot one individual's genome-wide genotypes
qtl2-package

qtl2: Quantitative Trait Locus Mapping in Experimental Crosses
align_scan1_map

Internal functions
pull_genoprobint

Pull genotype probabilities for an interval
pull_genoprobpos

Pull genotype probabilities for a particular position
interp_map

Interpolate between maps
probs_to_grid

Subset genotype probability array to pseudomarkers on a grid
invert_sdp

Calculate SNP genotype matrix from strain distribution patterns
plot_scan1

Plot a genome scan
mat2strata

Define strata based on rows of a matrix
map_to_grid

Subset a map to positions on a grid
plot_sdp

plot strain distribution patterns for SNPs
rbind.scan1

Join genome scan results for different chromosomes.
read_cross2

Read QTL data from files
rbind.scan1perm

Combine data from scan1perm objects
read_pheno

Read phenotype data
pull_markers

Drop all but a specified set of markers
rbind.calc_genoprob

Join genotype probabilities for different individuals
scan1coef

Calculate QTL effects in scan along one chromosome
reduce_map_gaps

Reduce the lengths of gaps in a map
smooth_gmap

Smooth genetic map
recode_snps

Recode SNPs by major allele
scan1blup

Calculate BLUPs of QTL effects in scan along one chromosome
qtl2version

Installed version of R/qtl2
sim_geno

Simulate genotypes given observed marker data
subset.calc_genoprob

Subsetting genotype probabilities
subset.cross2

Subsetting data for a QTL experiment
sdp2char

Convert strain distribution patterns to character strings
reduce_markers

Reduce markers to a subset of more-evenly-spaced ones
scan1snps

Single-QTL genome scan at imputed SNPs
replace_ids

Replace individual IDs
subset.sim_geno

Subsetting imputed genotypes
subset.viterbi

Subsetting Viterbi results
top_snps

Create table of top snp associations
viterbi

Calculate most probable sequence of genotypes
plot_genoprobcomp

Plot comparison of two sets of genotype probabilities
print.summary.scan1perm

Print summary of scan1perm permutations
plot_genoprob

Plot genotype probabilities for one individual on one chromosome.
subset_scan1

Subset scan1 output
unsmooth_gmap

Unsmooth genetic map
summary.cross2

Summary of cross2 object
print.cross2

Print a cross2 object
summary_compare_geno

Basic summary of compare_geno object
rbind.sim_geno

Join genotype imputations for different individuals
write_control_file

Write a control file for QTL data
rbind.viterbi

Join Viterbi results for different individuals
summary_scan1perm

Summarize scan1perm results
xpos_scan1

Get x-axis position for genomic location
scale_kinship

Scale kinship matrix
scan1

Genome scan with a single-QTL model
scan1perm

Permutation test for genome scan with a single-QTL model
scan1max

Maximum LOD score from genome scan with a single-QTL model
zip_datafiles

Zip a set of data files
calc_entropy

Calculate entropy of genotype probability distribution
calc_geno_freq

Calculate genotype frequencies
calc_genoprob

Calculate conditional genotype probabilities
CCcolors

Collaborative Cross colors
batch_cols

Batch columns by pattern of missing values
bayes_int

Calculate Bayes credible intervals
batch_vec

Split vector into batches
add_threshold

Add thresholds to genome scan plot
calc_errorlod

Calculate genotyping error LOD scores
basic_summaries

Basic summaries of a cross2 object
cbind.calc_genoprob

Join genotype probabilities for different chromosomes
calc_raw_het

Calculate estimated heterozygosity from raw SNP genotypes
calc_kinship

Calculate kinship matrix
calc_raw_founder_maf

Calculate founder minor allele frequencies from raw SNP genotypes
calc_het

Calculate heterozygosities
calc_grid

Calculate indicators of which marker/pseudomarker positions are along a fixed grid
calc_sdp

Calculate strain distribution pattern from SNP genotypes
calc_raw_maf

Calculate minor allele frequency from raw SNP genotypes