Learn R Programming

qtl (version 1.39-5)

refineqtl: Refine the positions of QTL

Description

Iteratively scan the positions for QTL in the context of a multiple QTL model, to try to identify the positions with maximum likelihood, for a fixed QTL model.

Usage

refineqtl(cross, pheno.col=1, qtl, chr, pos, qtl.name, covar=NULL, formula, method=c("imp","hk"), model=c("normal", "binary"), verbose=TRUE, maxit=10, incl.markers=TRUE, keeplodprofile=TRUE, tol=1e-4, maxit.fitqtl=1000, forceXcovar=FALSE)

Arguments

cross
An object of class cross. See read.cross for details.
pheno.col
Column number in the phenotype matrix to be used as the phenotype. One may also give a character string matching the phenotype name. Finally, one may give a numeric vector of phenotypes, in which case it must have the length equal to the number of individuals in the cross, and there must be either non-integers or values < 1 or > no. phenotypes; this last case may be useful for studying transformations.
qtl
A QTL object, as produced by makeqtl, containing the positions of the QTL. Provide either qtl or the pair chr and pos.
chr
Vector indicating the chromosome for each QTL; if qtl is provided, this should not be.
pos
Vector indicating the positions for each QTL; if qtl is provided, this should not be.
qtl.name
Optional user-specified name for each QTL. If qtl is provided, this should not be.
covar
A matrix or data.frame of covariates. These must be strictly numeric.
formula
An object of class formula indicating the model to be fitted. (It can also be the character string representation of a formula.) QTLs are indicated as Q1, Q2, etc. Covariates are indicated by their names in covar.
method
Indicates whether to use multiple imputation or Haley-Knott regression.
model
The phenotype model: the usual model or a model for binary traits
verbose
If TRUE, give feedback about progress. If verbose is an integer > 1, further messages from scanqtl are also displayed.
maxit
Maximum number of iterations.
incl.markers
If FALSE, do calculations only at points on an evenly spaced grid.
keeplodprofile
If TRUE, keep the LOD profiles from the last iteration as attributes to the output.
tol
Tolerance for convergence for the binary trait model.
maxit.fitqtl
Maximum number of iterations for fitting the binary trait model.
forceXcovar
If TRUE, force inclusion of X-chr-related covariates (like sex and cross direction).

Value

An object of class qtl, with QTL placed in their new positions.If keeplodprofile=TRUE, LOD profiles from the last pass through the refinement algorithm are retained as an attribute, "lodprofile", to the object. These may be plotted with plotLodProfile.

Details

QTL positions are optimized, within the context of a fixed QTL model, by a scheme described in Zeng et al. (1999). Each QTL is considered one at a time (in a random order), and a scan is performed, allowing the QTL to vary across its chromosome, keeping the positions of all other QTL fixed. If there is another QTL on the chromosome, the position of the floating QTL is scanned from the end of the chromosome to the position of the flanking QTL. If the floating QTL is between two QTL on a chromosome, its position is scanned between those two QTL positions. Each QTL is moved to the position giving the highest likelihood, and the entire process is repeated until no further improvement in likelihood can be obtained.

One may provide either a qtl object (as produced by makeqtl), or vectors chr and pos (and, optionally, qtl.name) indicating the positions of the QTL.

If a qtl object is provided, QTL that do not appear in the model formula are ignored, but they remain part of the QTL object that is output.

References

Zeng, Z.-B., Kao, C.-H., and Basten, C. J. (1999) Estimating the genetic architecture of quantitative traits. Genet. Res. 74, 279--289.

Haley, C. S. and Knott, S. A. (1992) A simple regression method for mapping quantitative trait loci in line crosses using flanking markers. Heredity 69, 315--324.

Sen, Ś. and Churchill, G. A. (2001) A statistical framework for quantitative trait mapping. Genetics 159, 371--387.

See Also

fitqtl, makeqtl, scanqtl, addtoqtl, dropfromqtl, replaceqtl, plotLodProfile

Examples

Run this code
data(fake.bc)

fake.bc <- calc.genoprob(fake.bc, step=2)
qtl <- makeqtl(fake.bc, chr=c(2,5), pos=c(32.5, 17.5), what="prob")
rqtl <- refineqtl(fake.bc, qtl=qtl, method="hk")

Run the code above in your browser using DataLab