sim.geno: Simulate genotypes given observed marker data

View source: R/sim.geno.R

sim.genoR Documentation

Simulate genotypes given observed marker data

Description

Uses the hidden Markov model technology to simulate from the joint distribution Pr(g | O) where g is the underlying genotype vector and O is the observed multipoint marker data, with possible allowance for genotyping errors.

Usage

sim.geno(cross, n.draws=16, step=0, off.end=0, error.prob=0.0001,
         map.function=c("haldane","kosambi","c-f","morgan"),
         stepwidth=c("fixed", "variable", "max"))

Arguments

cross

An object of class cross. See read.cross for details.

n.draws

Number of simulation replicates to perform.

step

Maximum distance (in cM) between positions at which the simulated genotypes will be drawn, though for step=0, genotypes are drawn only at the marker locations.

off.end

Distance (in cM) past the terminal markers on each chromosome to which the genotype simulations will be carried.

error.prob

Assumed genotyping error rate used in the calculation of the penetrance Pr(observed genotype | true genotype).

map.function

Indicates whether to use the Haldane, Kosambi, Carter-Falconer, or Morgan map function when converting genetic distances into recombination fractions.

stepwidth

Indicates whether the intermediate points should with fixed or variable step sizes. We recommend using "fixed"; "variable" was included for the qtlbim package (https://cran.r-project.org/src/contrib/Archive/qtlbim/). The "max" option inserts the minimal number of intermediate points so that the maximum distance between points is step.

Details

After performing the forward-backward equations, we draw from Pr(g_1 = v | O) and then Pr(g_{k+1} = v | O, g_k = u).

In the case of the 4-way cross, with a sex-specific map, we assume a constant ratio of female:male recombination rates within the inter-marker intervals.

Value

The input cross object is returned with a component, draws, added to each component of cross$geno. This is an array of size [n.ind x n.pos x n.draws] where n.pos is the number of positions at which the simulations were performed and n.draws is the number of replicates. Attributes "error.prob", "step", and "off.end" are set to the values of the corresponding arguments, for later reference.

Author(s)

Karl W Broman, broman@wisc.edu

See Also

calc.genoprob, argmax.geno

Examples

data(fake.f2)

fake.f2 <- sim.geno(fake.f2, step=2, n.draws=8)

qtl documentation built on Nov. 28, 2023, 1:09 a.m.