MIM.search {QTLEMM} | R Documentation |
QTL search by MIM
Description
Expectation-maximization algorithm for QTL multiple interval mapping to find one more QTL in the presence of some known QTLs.
Usage
MIM.search(
QTL,
marker,
geno,
y,
method = "EM",
type = "RI",
D.matrix = NULL,
ng = 2,
cM = TRUE,
speed = 1,
QTLdist = 15,
link = TRUE,
crit = 10^-3,
console = TRUE
)
Arguments
QTL |
matrix. A q*2 matrix contains the QTL information, where the row dimension 'q' represents the number of QTLs in the chromosomes. The first column labels the chromosomes where the QTLs are located, and the second column labels the positions of QTLs (in morgan (M) or centimorgan (cM)). |
marker |
matrix. A k*2 matrix contains the marker information, where the row dimension 'k' represents the number of markers in the chromosomes. The first column labels the chromosomes where the markers are located, and the second column labels the positions of markers (in morgan (M) or centimorgan (cM)). It's important to note that chromosomes and positions must be sorted in order. |
geno |
matrix. A n*k matrix contains the genotypes of k markers for n individuals. The marker genotypes of P1 homozygote (MM), heterozygote (Mm), and P2 homozygote (mm) are coded as 2, 1, and 0, respectively, with NA indicating missing values. |
y |
vector. A vector with n elements that contains the phenotype values of individuals. |
method |
character. When method="EM", it indicates that the interval mapping method by Lander and Botstein (1989) is used in the analysis. Conversely, when method="REG", it indicates that the approximate regression interval mapping method by Haley and Knott (1992) is used in the analysis. |
type |
character. The population type of the dataset. Includes backcross (type="BC"), advanced intercross population (type="AI"), and recombinant inbred population (type="RI"). The default value is "RI". |
D.matrix |
matrix. The design matrix of QTL effects is a g*p matrix, where g is the number of possible QTL genotypes, and p is the number of effects considered in the MIM model. It's important to note that the QTL number of the design matrix must be the original QTL number plus one. The design matrix can be easily generated by the function D.make(). If set to NULL, it will automatically generate a design matrix with all additive and dominant effects and without any epistasis effect. |
ng |
integer. The generation number of the population type. For instance, in a BC1 population where type="BC", ng=1; in an AI F3 population where type="AI", ng=3. |
cM |
logical. Specify the unit of marker position. If cM=TRUE, it denotes centimorgan; if cM=FALSE, it denotes morgan. |
speed |
numeric. The walking speed of the QTL search (in cM). |
QTLdist |
numeric. The minimum distance (in cM) among different linked significant QTL. Positions near the known QTLs within this distance will not be considered as candidate positions in the search process. |
link |
logical. When set to False, positions on the same chromosomes as the known QTLs will not be searched. |
crit |
numeric. The convergence criterion of EM algorithm. The E and M steps will iterate until a convergence criterion is met. It must be a value between 0 and 1. |
console |
logical. Determines whether the process of the algorithm will be displayed in the R console or not. |
Value
effect |
The estimated effects, log-likelihood value, and LRT statistics of all searched positions. |
QTL.best |
The positions of the best QTL combination. |
effect.best |
The estimated effects and LRT statistics of the best QTL combination. |
References
KAO, C.-H. and Z.-B. ZENG 1997 General formulas for obtaining the maximum likelihood estimates and the asymptotic variance-covariance matrix in QTL mapping when using the EM algorithm. Biometrics 53, 653-665. <doi: 10.2307/2533965.>
KAO, C.-H., Z.-B. ZENG and R. D. TEASDALE 1999 Multiple interval mapping for Quantitative Trait Loci. Genetics 152: 1203-1216. <doi: 10.1093/genetics/152.3.1203>
See Also
Examples
# load the example data
load(system.file("extdata", "exampledata.RDATA", package = "QTLEMM"))
# run and result
QTL <- c(1, 23)
result <- MIM.search(QTL, marker, geno, y, type = "RI", ng = 2, speed = 15, QTLdist = 50)
result$QTL.best
result$effect.best