Skip to contents

Fits an RR-BLUP model that estimates seperate additive effects for females and males and a dominance effect. This implementation is meant for situations where RRBLUP_SCA is too slow. Note that RRBLUP_SCA2 is only faster in certain situations. Most users should use RRBLUP_SCA.

Usage

RRBLUP_SCA2(
  pop,
  traits = 1,
  use = "pheno",
  snpChip = 1,
  useQtl = FALSE,
  maxIter = 10,
  VuF = NULL,
  VuM = NULL,
  VuD = NULL,
  Ve = NULL,
  useEM = TRUE,
  tol = 1e-06,
  simParam = NULL,
  ...
)

Arguments

pop

a Pop-class to serve as the training population

traits

an integer indicating the trait to model, a trait name, or a function of the traits returning a single value.

use

train model using phenotypes "pheno", genetic values "gv", estimated breeding values "ebv", breeding values "bv", or randomly "rand"

snpChip

an integer indicating which SNP chip genotype to use

useQtl

should QTL genotypes be used instead of a SNP chip. If TRUE, snpChip specifies which trait's QTL to use, and thus these QTL may not match the QTL underlying the phenotype supplied in traits.

maxIter

maximum number of iterations for convergence.

VuF

marker effect variance for females. If value is NULL, a reasonable starting point is chosen automatically.

VuM

marker effect variance for males. If value is NULL, a reasonable starting point is chosen automatically.

VuD

marker effect variance for dominance. If value is NULL, a reasonable starting point is chosen automatically.

Ve

error variance. If value is NULL, a reasonable starting point is chosen automatically.

useEM

use EM to solve variance components. If false, the initial values are considered true.

tol

tolerance for EM algorithm convergence

simParam

an object of SimParam

...

additional arguments if using a function for traits

Examples

#Create founder haplotypes
founderPop = quickHaplo(nInd=10, nChr=1, segSites=20)

#Set simulation parameters
SP = SimParam$new(founderPop)
SP$addTraitA(10)
SP$setVarE(h2=0.5)
SP$addSnpChip(10)

#Create population
pop = newPop(founderPop, simParam=SP)

#Run GS model and set EBV
ans = RRBLUP_SCA2(pop, simParam=SP)
pop = setEBV(pop, ans, simParam=SP)

#Evaluate accuracy
cor(gv(pop), ebv(pop))
#>        est_GV_Trait1
#> Trait1     0.8001477