Implements the marker ordering algorithm Recombination Counting and Ordering (Van Os et al., 2005).
record(input.seq, times=10, LOD=0, max.rf=0.5, tol=10E-5)
an object of class sequence
.
integer. Number of replicates of the RECORD procedure.
minimum LOD-Score threshold used when constructing the pairwise recombination fraction matrix.
maximum recombination fraction threshold used as the LOD value above.
tolerance for the C routine, i.e., the value used to evaluate convergence.
An object of class sequence
, which is a list containing the
following components:
a vector
containing the (ordered) indices of
markers in the sequence, according to the input file.
a vector
with the linkage phases between markers
in the sequence, in corresponding positions. -1
means that there are
no defined linkage phases.
a vector
with the recombination frequencies between
markers in the sequence. -1
means that there are no estimated
recombination frequencies.
log-likelihood of the corresponding linkage map.
name of the object of class outcross
with the
raw data.
name of the object of class rf.2pts
with the 2-point
analyses.
Recombination Counting and Ordering (RECORD) is an algorithm for marker ordering in linkage groups. It is not an exhaustive search method and, therefore, is not computationally intensive. However, it does not guarantee that the best order is always found. The only requirement is a matrix with recombination fractions between markers. Next is an adapted excerpt from Mollinari et al (2009) describing the RECORD algorithm:
Based on the expected number of recombination events, an
\(S\) matrix is constructed, \(S = [S_{M_{i}M_{j}}]_{m \times
m}\) (for \(M_{i} = M_{j}\),
\(S_{M_{i}M_{j}} = 0\)), where \(m\) is the number
of markers. The procedure to obtain \(S\) is based on the
expected number of crossovers between marker pairs, conditioned by
the observation of the markers' phenotype. The optimization
criterion COUNT for a sequence of \(m\) markers may be
calculated by \(COUNT = \sum_{i=1}^{m-1} S_{M_{i}M_{i+1}}\), where smaller COUNT values
correspond to better orders. Map building is carried out by randomly
taking two markers and positioning a third one at the beginning, at
the end and between them. The marker is fixed at the position that
gives a smaller value of COUNT. Similarly, the remaining
markers are positioned at pre-established orders until completion of
the map. Subsequently, a search for smaller values of COUNT
is performed, inverting the position on the map of subsequences of
size \(m' = 2, \ldots, 20\). If the map resulting
from the inverted positions presents a COUNT value smaller
than the previous one, it is kept. The procedure is repeated
times
times and the sequence presenting the smallest
COUNT value is chosen.
After determining the order with RECORD, the final map is constructed
using the multipoint approach (function map
).
Mollinari, M., Margarido, G. R. A., Vencovsky, R. and Garcia, A. A. F. (2009) Evaluation of algorithms used to order markers on genetics maps. Heredity 103: 494-502.
Van Os, H., Stam, P., Visser, R.G.F. and Van Eck, H.J. (2005) RECORD: a novel method for ordering loci on a genetic linkage map. Theoretical and Applied Genetics 112: 30-40.
# NOT RUN {
##outcross example
data(example.out)
twopt <- rf.2pts(example.out)
all.mark <- make.seq(twopt,"all")
groups <- group(all.mark)
LG1 <- make.seq(groups,1)
LG1.rec <- record(LG1)
##F2 example
data(fake.f2.onemap)
twopt <- rf.2pts(fake.f2.onemap)
all.mark <- make.seq(twopt,"all")
groups <- group(all.mark)
LG1 <- make.seq(groups,1)
LG1.rec <- record(LG1)
LG1.rec
# }
Run the code above in your browser using DataLab