Description Usage Arguments Value References See Also

View source: R/EMM_functions_cpp.R

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 β + ∑ _{l=1} ^ {L} Z _ {l} u _ {l} + ε*

where *Var[y] = ∑ _{l=1} ^ {L} Z _ {l} K _ {l} Z _ {l}' σ _ {l} ^ 2 + I σ _ {e} ^ {2}*.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 |

`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 - $values
Eigen values - $vectors
Eigen vectors
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, |

- $y.pred
The fitting values of y

*y = Xβ + Zu*- $Vu
Estimator for

*σ^2_u*, all of the genetic variance- $Ve
Estimator for

*σ^2_e*- $beta
BLUE(

*β*)- $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' + λ I*

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.

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.