diff --git a/DESCRIPTION b/DESCRIPTION index 6ec54f0..f696180 100755 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,15 +1,11 @@ Package: rrBLUP Title: Ridge regression and other kernels for genomic selection -Version: 2.0 -Author: Jeffrey Endelman +Version: 2.1 +Author: Jeffrey Endelman Maintainer: Jeffrey Endelman -Description: One application is to estimate marker effects by ridge - regression; alternatively, BLUPs can be calculated based on - kinship. The genetic correlation between lines can be modeled - using a marker-based, additive relationship matrix, or via - Gaussian and exponential kernels. +Description: One application is to estimate marker effects by ridge regression; alternatively, BLUPs can be calculated based on kinship. The genetic correlation between lines can be modeled using a marker-based, additive relationship matrix, or via Gaussian and exponential kernels. License: GPL-3 LazyLoad: yes -Packaged: 2011-10-14 14:59:11 UTC; Jeffrey +Packaged: 2011-10-31 21:20:54 UTC; Jeffrey Repository: CRAN -Date/Publication: 2011-10-14 15:44:02 +Date/Publication: 2011-11-02 17:26:39 diff --git a/MD5 b/MD5 index 3c5a20d..4a802e0 100644 --- a/MD5 +++ b/MD5 @@ -1,9 +1,9 @@ -7af1f4caf6c3c81eb07a8b2008636908 *DESCRIPTION +a2ed011b73eef5123e892e8d0764d52a *DESCRIPTION d8b658bc9e3390e6e6d0539c702e4597 *NAMESPACE ed40c1ee328c5c1a360f8f19e1c3da6f *R/GWA.R 1eb18cf7496f7a40675c50be85207f5b *R/impute.R 12d0dfead32ae78381bb56fe1b09573e *R/kinship.BLUP.R -58a7f4eea932326f53e2e339141ab8d1 *R/mixed.solve.R +cff27224f8e9b458f5b4cd69af2a3d7a *R/mixed.solve.R be5fbfb20ec993da916e34e007aabbe0 *man/GWA.Rd 5f2221a320a663d862e94a88b6b6f8db *man/impute.Rd d54199efda6d19e1581779c7d67bf109 *man/kinship.BLUP.Rd diff --git a/R/mixed.solve.R b/R/mixed.solve.R index c3f3acf..a613a7e 100755 --- a/R/mixed.solve.R +++ b/R/mixed.solve.R @@ -118,14 +118,14 @@ if (!SE) { list(Vu = Vu.opt, Ve = Ve.opt, beta = as.vector(beta), u = as.vector(u), LL = LL) } } else { - beta.var <- Vu.opt * solve(W) - beta.SE <- sqrt(diag(beta.var)) + Winv <- solve(W) + beta.SE <- sqrt(Vu.opt*diag(Winv)) WW <- tcrossprod(KZt.Hinv,KZt) WWW <- KZt.Hinv%*%X if (is.null(K)) { - u.SE <- sqrt(Vu.opt * (rep(1,m) - diag(WW) + diag(tcrossprod(WWW%*%beta.var,WWW)))) + u.SE <- sqrt(Vu.opt * (rep(1,m) - diag(WW) + diag(tcrossprod(WWW%*%Winv,WWW)))) } else { - u.SE <- sqrt(Vu.opt * (diag(K) - diag(WW) + diag(tcrossprod(WWW%*%beta.var,WWW)))) + u.SE <- sqrt(Vu.opt * (diag(K) - diag(WW) + diag(tcrossprod(WWW%*%Winv,WWW)))) } if (return.Hinv) { list(Vu = Vu.opt, Ve = Ve.opt, beta = as.vector(beta), beta.SE = as.vector(beta.SE), u = as.vector(u), u.SE = as.vector(u.SE), LL = LL, Hinv = Hinv)