Learn R Programming

qtl (version 0.92-3)

sim.cross: Simulate a QTL experiment

Description

Simulates data for a QTL experiment using a model in which QTLs act additively.

Usage

sim.cross(map, model=NULL, n.ind=100, type=c("f2", "bc", "4way"),
          error.prob=0, missing.prob=0, partial.missing.prob=0,
          keep.qtlgeno=TRUE, keep.errorind=TRUE,
	  map.function=c("haldane","kosambi","c-f"))

Arguments

map
A list whose components are vectors containing the marker locations on each of the chromosomes.
model
A matrix where each row corresponds to a different QTL, and gives the chromosome number, cM position and effects of the QTL.
n.ind
Number of individuals to simulate.
type
Indicates whether to simulate an intercross (f2), a backcross (bc), or a phase-known 4-way cross (4way).
error.prob
The genotyping error rate.
missing.prob
The rate of missing genotypes.
partial.missing.prob
When simulating an intercross or 4-way cross, this gives the rate at which markers will be incompletely informative (i.e., dominant or recessive).
keep.qtlgeno
If TRUE, genotypes for the simulated QTLs will be included in the output.
keep.errorind
If TRUE, and if error.prob > 0, the identity of genotyping errors will be included in the output.
map.function
The map function to use when converting genetic distances into recombination fractions.

Value

  • An object of class cross. See read.cross for details. If keep.qtlgeno is TRUE, the cross object will contain a component qtlgeno which is a matrix containing the QTL genotypes (with complete data and no errors), coded as in the genotype data. If keep.errorind is TRUE and errors were simulated, each component of geno will each contain a matrix errors, with 1's indicating simulated genotyping errors.

Details

Meiosis is assumed to exhibit no crossover interference. If one of the chromosomes has class X, it is assumed to be the X chromosome, and is assumed to be segregating in the cross. Thus, in an intercross, it is segregating like a backcross chromosome. In a 4-way cross, a second phenotype, sex, will be generated.

QTLs are assumed to act additively, and the residual phenotypic variation is assumed to be normally distributed with variance 1.

For a backcross, the effect of a QTL is a single number corresponding to half the difference between the homozygote and the heterozygote.

For an intercross, the effect of a QTL is a pair of numbers, ($a,d$), where $a$ is the additive effect (half the difference between the homozygotes) and $d$ is the dominance deviation (the difference between the heterozygote and the midpoint between the homozygotes).

For a four-way cross, the effect of a QTL is a set of three numbers, ($a,b,c$), where, in the case of one QTL, the mean phenotype, conditional on the QTL genotyping being AC, BC, AD or BD, is $a$, $b$, $c$ or 0, respectively.

See Also

sim.map, read.cross, fake.f2, fake.bc fake.4way

Examples

Run this code
# simulate a genetic map
map <- sim.map()

# simulate 250 intercross individuals with 2 QTLs
fake <- sim.cross(map, type="f2", n.ind=250,
                  model = rbind(c(1,45,1,1),c(5,20,0.5,-0.5)))

Run the code above in your browser using DataLab