Uses a hidden Markov model to re-estimate the genetic map for an experimental cross, with possible allowance for genotyping errors.
est_map(
cross,
error_prob = 0.0001,
map_function = c("haldane", "kosambi", "c-f", "morgan"),
lowmem = FALSE,
maxit = 10000,
tol = 0.000001,
quiet = TRUE,
save_rf = FALSE,
cores = 1
)
A list of numeric vectors, with the estimated marker
locations (in cM). The location of the initial marker on each
chromosome is kept the same as in the input cross
.
Object of class "cross2"
. For details, see the
R/qtl2 developer guide.
Assumed genotyping error probability
Character string indicating the map function to use to convert genetic distances to recombination fractions.
If FALSE
, precalculate initial and emission
probabilities, and at each iteration calculate the transition
matrices for a chromosome; potentially a lot faster but using
more memory. Needs to be tailored somewhat to cross type. For
example, multi-way RIL may need to reorder the transition
matrix according to cross order, and AIL and DO need separate
transition matrices for each generation.
Maximum number of iterations in EM algorithm.
Tolerance for determining convergence
If FALSE
, print progress messages.
If TRUE
, save the estimated recombination
fractions as an attribute ("rf"
) of the result.
Number of CPU cores to use, for parallel calculations.
(If 0
, use parallel::detectCores()
.)
Alternatively, this can be links to a set of cluster sockets, as
produced by parallel::makeCluster()
.
The map is estimated assuming no crossover interference, but a map function (by default, Haldane's) is used to derive the genetic distances.
grav2 <- read_cross2(system.file("extdata", "grav2.zip", package="qtl2"))
grav2 <- grav2[,"3"]
gmap <- est_map(grav2, error_prob=0.002)
Run the code above in your browser using DataLab