EM3.op {RAINBOWR} | R Documentation |
Equation of mixed model for multi-kernel using other packages (much faster than EM3.cpp)
Description
This function solves the following multi-kernel linear mixed effects model
using MMEst
function in 'MM4LMM' package,
lmm.aireml
or lmm.diago
functions in 'gaston' package,
or EM3.cpp
function in 'RAINBOWR' package.
y = X \beta + \sum _{l=1} ^ {L} Z _ {l} u _ {l} + \epsilon
where Var[y] = \sum _{l=1} ^ {L} Z _ {l} K _ {l} Z _ {l}' \sigma _ {l} ^ 2 + I \sigma _ {e} ^ {2}
.
Usage
EM3.op(
y,
X0 = NULL,
ZETA,
eigen.G = NULL,
package = "gaston",
tol = NULL,
n.core = 1,
REML = TRUE,
pred = TRUE,
return.u.always = TRUE,
return.u.each = TRUE,
return.Hinv = TRUE
)
Arguments
y |
A |
X0 |
A |
ZETA |
A list of variance matrices and its design matrices of random effects. You can use more than one kernel matrix. For example, ZETA = list(A = list(Z = Z.A, K = K.A), D = list(Z = Z.D, K = K.D)) (A for additive, D for dominance) Please set names of lists "Z" and "K"! |
eigen.G |
A list with
The result of the eigen decompsition of |
package |
Package name to be used in this function. We only offer the following three packages: "RAINBOWR", "MM4LMM" and "gaston". Default package is 'gaston'. |
tol |
The tolerance for detecting linear dependencies in the columns of G = ZKZ'. Eigen vectors whose eigen values are less than "tol" argument will be omitted from results. If tol is NULL, top 'n' eigen values will be effective. |
n.core |
Setting n.core > 1 will enable parallel execution on a machine with multiple cores (only for 'MM4LMM'). |
REML |
You can choose which method you will use, "REML" or "ML". If REML = TRUE, you will perform "REML", and if REML = FALSE, you will perform "ML". |
pred |
If TRUE, the fitting values of y is returned. |
return.u.always |
When using the "gaston" package with missing values or
using the "MM4LMM" package (with/without missings), computing BLUP will take
some time in addition to solving the mixed-effects model. You can choose
whether BLUP ('u'; |
return.u.each |
If TRUE, the function also computes each BLUP corresponding to different kernels (when solving multi-kernel mixed-effects model). It takes additional time compared to the one with 'return.u.each = FALSE'. |
return.Hinv |
If TRUE, |
Value
- $y.pred
The fitting values of y
y = X\beta + Zu
- $Vu
Estimator for
\sigma^2_u
, all of the genetic variance- $Ve
Estimator for
\sigma^2_e
- $beta
BLUE(
\beta
)- $u
BLUP(Sum of
Zu
)- $u.each
BLUP(Each
u
)- $weights
The proportion of each genetic variance (corresponding to each kernel of ZETA) to Vu
- $LL
Maximized log-likelihood (full or restricted, depending on method)
- $Vinv
The inverse of
V = Vu \times ZKZ' + Ve \times I
- $Hinv
The inverse of
H = ZKZ' + \lambda I
References
Kang, H.M. et al. (2008) Efficient Control of Population Structure in Model Organism Association Mapping. Genetics. 178(3): 1709-1723.
Zhou, X. and Stephens, M. (2012) Genome-wide efficient mixed-model analysis for association studies. Nat Genet. 44(7): 821-824.
Johnson, D. L., & Thompson, R. (1995). Restricted maximum likelihood estimation of variance components for univariate animal models using sparse matrix techniques and average information. Journal of dairy science, 78(2), 449-456.
Hunter, D. R., & Lange, K. (2004). A tutorial on MM algorithms. The American Statistician, 58(1), 30-37.
Zhou, H., Hu, L., Zhou, J., & Lange, K. (2015). MM algorithms for variance components models. arXiv preprint arXiv:1509.07426.
Gilmour, A. R., Thompson, R., & Cullis, B. R. (1995), Average information REML: an efficient algorithm for variance parameter estimation in linear mixed models, Biometrics, 1440-1450.