chiasma {xoi} | R Documentation |
Estimate chiasma distribution from crossover counts
Description
Fit several models, with an assumption of no chromatid interference, to crossover count data to obtain fitted distributions of the number of chiasmata.
Usage
chiasma(
xo,
max.chiasma = max(xo) * 2 + 5,
n.iter = 10000,
tol = 0.000001,
verbose = FALSE
)
Arguments
xo |
Vector of non-negative integers; the number of crossovers in a set of meiotic products. |
max.chiasma |
Maximum number of chiasmata to allow. |
n.iter |
Maximum number of iterations in the EM algorithm. |
tol |
Tolerance for convergence of the EM algorithm. |
verbose |
If TRUE, print number of interations for each of the 4 models at the end. |
Details
See Broman and Weber (2000) for details of the method.
We use R's stats::integrate()
function for numerical integrals,
stats::optimize()
for optimizing the likelihood, and
stats::uniroot()
for identifying the endpoints of the likelihood
support interval.
Value
A list with three components.
First, a matrix containing the observed distribution of the numbers of crossovers, followed by the fitted distributions under the Poisson model, the truncated Poisson model (assuming an obligate chiasma), the obligate chiasma model, and the freely varying model. In all cases we assume no chromatid interference.
Second, a matrix containing the estimated distributions of the number of chiasmata on the four-strand bundle for the above four models.
Third, the estimated average number of crossovers under the Poisson and truncated Poisson models.
Author(s)
Karl W Broman, broman@wisc.edu
References
Broman, K. W. and Weber, J. L. (2000) Characterization of human crossover interference. Am. J. Hum. Genet. 66, 1911–1926.
Broman, K. W., Rowe, L. B., Churchill, G. A. and Paigen, K. (2002) Crossover interference in the mouse. Genetics 160, 1123–1131.
Yu, K. and Feinbold, E. (2001) Estimating the frequency distribution of crossovers during meiosis from recombination data. Biometrics 57, 427–434.
See Also
fitGamma()
, qtl::fitstahl()
,
countxo()
Examples
data(bssbsb)
# estimated number of crossovers on chr 1
nxo <- countxo(bssbsb, chr=1)
# estimate chiasma distribution
## Not run: chiasma(nxo)