fitqtl {qtl} | R Documentation |
Fits a user-specified multiple-QTL model. If specified, a drop-one-term analysis will be performed.
fitqtl(cross, pheno.col=1, qtl, covar=NULL, formula, method=c("imp", "hk"), dropone=TRUE, get.ests=FALSE, run.checks=TRUE)
cross |
An object of class cross . See
read.cross for details. |
pheno.col |
Column number in the phenotype matrix which should be used as the phenotype. One may also give a character string matching a phenotype name. |
qtl |
An object of class qtl , as output from
makeqtl . |
covar |
A data.frame of covariates. These must be strictly numeric. |
formula |
An object of class formula
indicating the model to be fitted. QTLs are referred to as
Q1 , Q2 , etc. Covariates are referred to by their names
in the data frame covar . |
method |
Indicates whether to use multiple imputation or Haley-Knott regression. |
dropone |
If TRUE, do drop-one-term analysis. |
get.ests |
If TRUE, return estimated QTL effects and their estimated variance-covariance matrix. |
run.checks |
If TRUE, check the input formula and check for individuals with missing phenotypes or covariates. |
The formula is used to specified the model to be fit. In the
formula, use Q1
, Q2
, etc., or q1
,
q2
, etc., to represent the QTLs, and the column names in the
covariate data frame to represent the covariates.
We enforce a hierarchical structure on the model formula: if a QTL or covariate is in involved in an interaction, its main effect must also be included.
In the drop-one-term analysis, for a given QTL/covariate model, all submodels will be analyzed. For each term in the input formula, when it is dropped, all higher order terms that contain it will also be dropped. The comparison between the new model and the full (input) model will be output.
The part to get estimated QTL effects is fully working only for the case of autosomes in a backcross or intercross. In other cases the values returned are based on a design matrix that is convenient for calculations but not easily interpreted.
An object of class fitqtl
. It may contains as many as three fields:
Note that the degree of freedom, Type III sum of squares, the LOD score and the percentage of variance explained are the values comparing the full to the sub-model with the term dropped. Also note that for imputation method, the percentage of variance explained, the the F values and the P values are approximations calculated from the LOD score.
The part to get estimated QTL effects is fully working only for the case of autosomes in a backcross or intercross. In other cases the values returned are based on a design matrix that is convenient for calculations but not easily interpreted.
Hao Wu; Karl W Broman, kbroman@biostat.wisc.edu
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, 'S. and Churchill, G. A. (2001) A statistical framework for quantitative trait mapping. Genetics 159, 371–387.
summary.fitqtl
, makeqtl
,
scanqtl
, refineqtl
,
addtoqtl
,
dropfromqtl
,
replaceqtl
,
reorderqtl
data(fake.f2) # take out several QTLs and make QTL object qc <- c(1, 8, 13) qp <- c(26, 56, 28) fake.f2 <- subset(fake.f2, chr=qc) fake.f2 <- sim.geno(fake.f2, n.draws=8, step=2, err=0.001) qtl <- makeqtl(fake.f2, qc, qp) # fit model with 3 interacting QTLs interacting # (performing a drop-one-term analysis) lod <- fitqtl(fake.f2, pheno.col=1, qtl, formula=y~Q1*Q2*Q3) summary(lod) ## Not run: # fit an additive QTL model lod.add <- fitqtl(fake.f2, pheno.col=1, qtl, formula=y~Q1+Q2+Q3) summary(lod.add) # fit the model including sex as an interacting covariate Sex <- data.frame(Sex=fake.f2$pheno$sex) lod.sex <- fitqtl(fake.f2, pheno.col=1, qtl, formula=y~Q1*Q2*Q3*Sex, cov=Sex) summary(lod.sex) # fit the same with an additive model lod.sex.add <- fitqtl(fake.f2, pheno.col=1, qtl, formula=y~Q1+Q2+Q3+Sex, cov=Sex) summary(lod.sex.add) ## End(Not run)