Genomic prediction cross-validation using penalised, Bayesian and mixed linear models
Build Status | License |
---|---|
A streamlined interface to calculate the breeding values of entries in breeding trials.
devtools::install_github("jeffersonfparil/gp")
R/
└── main.R
├── io.R
├── distances.R
└── cross_validation.R
└── models.R
└── metrics.R
- main.R - main function
- io.R - input, output, filtering, and simulation
- distances.R - genetic relationship, distance matrices and their inverses
- cross_validation.R - k-fold cross validation within and across populations, pairwise-cross-validation, and leave-one-population-out cross-validation
- models.R - genomic prediction models with the consistent signatures
- metrics.R - genomic prediction accuracy metrics
-
Ridge (a.k.a. GBLUP):
$Cost_{ridge} = \Sigma(y - X\beta)^2 + \lambda\Sigma\beta^2$ , where$\hat{\beta} = {(X^TX + \lambda I)^{-1} X^Ty}$ -
Lasso:
$Cost_{lasso} = \Sigma(y - X\beta)^2 + \lambda\Sigma|\beta|$ -
Elastic net:
$Cost_{ridge} = \Sigma(y - X\beta)^2 + (1-\alpha)\lambda\Sigma\beta^2 + \alpha\lambda\Sigma|\beta|$ - Bayes A: scaled t-distributed effects
-
Bayes B: scaled t-distributed effects with probability
$\pi$ ; and zero effects with probability$1-\pi$ , where$\pi \sim \beta(\theta_1, \theta_2)$ . -
Bayes C: normally distributed effects ($N(0, \sigma^2_{\beta})$) with probability
$\pi$ ; and zero effects with probability$1-\pi$ , where$\pi \sim \beta(\theta_1, \theta_2)$ . - gBLUP: genotype best linear unbiased prediction (gBLUP) using genomic relationship matrix to predict missing breeding values via Direct-Inversion Newton-Raphson or Average Information (via the sommer R package).
?gp::gp
With Nix: nix-shell --run bash --pure
.
With Conda: conda env create -f conda.yml
.
devtools::test()
Or check the entire library:
devtools::check()