Learn R Programming

qtl (version 1.39-5)

scantwopermhk: Permutation test for 2d genome scan by Haley-Knott regression

Description

Perform a permutation test with a two-dimensional genome scan with a two-QTL model, with possible allowance for additive covariates, by Haley-Knott regression.

Usage

scantwopermhk(cross, chr, pheno.col=1, addcovar=NULL, weights=NULL, n.perm=1, batchsize=1000, perm.strata=NULL, perm.Xsp=NULL, verbose=FALSE, assumeCondIndep=FALSE)

Arguments

cross
An object of class cross. See read.cross for details.
chr
Optional vector indicating the chromosomes for which LOD scores should be calculated. This should be a vector of character strings referring to chromosomes by name; numeric values are converted to strings. Refer to chromosomes with a preceding - to have all chromosomes but those considered. A logical (TRUE/FALSE) vector may also be used.
pheno.col
Column number in the phenotype matrix which should be used as the phenotype. This should be a single value (numeric index or character string for a phenotype name), but it may also be a vector of numeric values with length equal to the number of individuals in the cross, in which case it is taken to be a vector of individuals' phenotypes.
addcovar
Additive covariates.
weights
Optional weights of individuals. Should be either NULL or a vector of length n.ind containing positive weights. Used only in the case model="normal".
n.perm
Number of permutation replicates.
batchsize
If n.perm > batchsize, permutations will be run in batches of no more than batchsize permutations.
perm.strata
Used to perform a stratified permutation test. This should be a vector with the same number of individuals as in the cross data. Unique values indicate the individual strata, and permutations will be performed within the strata.
perm.Xsp
If TRUE, run separate permutations for A:A, A:X, and X:X. In this case, n.perm refers to the number of permutations for the A:A part; more permutations are used for the A:X and X:X parts, as estimates of quantiles farther out into the tails are needed.
verbose
If TRUE, display information about the progress of calculations.
assumeCondIndep
If TRUE, assume conditional independence of QTL genotypes given marker genotypes. This is an approximation, but it may speed things up.

Value

A list with six different LOD scores from each of the permutation replicates. First, the maximum LOD score for the full model (two QTLs plus an interaction). Second, for each pair of chromosomes, we take the difference between the full LOD and the maximum single-QTL LOD for those two chromosomes, and then maximize this across chromosome pairs. Third, for each pair of chromosomes we take the difference between the maximum full LOD and the maximum additive LOD, and then maximize this across chromosome pairs. Fourth, the maximum LOD score for the additive QTL model. Fifth, for each pair of chromosomes, we take the difference between the additive LOD and the maximum single-QTL LOD for those two chromosomes, and then maximize this across chromosome pairs. Finally, the maximum single-QTL LOD score (that is, from a single-QTL scan). The latter is not used in summary.scantwoperm, but does get calculated at each permutation, so we include it for the sake of completeness.If perm.Xsp=TRUE, this is a list of lists, for the A:A, A:X, and X:X sections, each being a list as described above.

Details

This is a scaled-back version of the permutation test provided by scantwo: only for a normal model with Haley-Knott regression, and not allowing interactive covariates.

This is an attempt to speed things up and attentuate the memory usage problems in scantwo.

In the case of perm.Xsp=TRUE (X-chr-specific thresholds), we use a stratified permutation test, stratified by sex and cross-direction.

References

Churchill, G. A. and Doerge, R. W. (1994) Empirical threshold values for quantitative trait mapping. Genetics 138, 963--971.

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.

See Also

scantwo, plot.scantwoperm, summary.scantwoperm, c.scantwoperm

Examples

Run this code
data(fake.f2)

fake.f2 <- calc.genoprob(fake.f2, step=5)
operm <- scantwopermhk(fake.f2, n.perm=2)
summary(operm, alpha=0.05)

Run the code above in your browser using DataLab