0

I have a biparental population of plants with high-density SNP/SSR marker data for all individuals and phenotypic data taken over three independent years. I've modeled each year separately for each trait of interest to calculate breeding values for each individual. I've also tried modeling the year as a random effect covariate, with a covariance matrix equal to the identity matrix (assuming no covariance between years), to see if modeling for a year covariate and combining phenotypic values across all three years can increase the heritability of my traits.

However, I've noticed that when I model using the CRAN sommer package's mmer() function, I will have heritability values that seem inflated more than they should. In some cases, I'll have no heritability for a trait when considered within a year, but when I model across all three years, with year as a random effect covariate and an identity covariance matrix, I get large increase in heritability values.

What is the best way to estimate BLUPs in this case, when I want to combine/consider all three years of data together? In particular, what way should I do this if I don't really have a good idea of how to specify a year-by-year covariance matrix?


bliptrip
  • 51
  • 2

1 Answers1

1

In the vignettes of the package multiple covariance structures are explained but in general you could model the GxE in different ways. If you assume that there's no GxE you could assume a diagonal structure (DIAG):

data(DT_example)
head(DT)
## Diagonal (DIAG) model
ans0 <- mmer(Yield~Env,
             random= ~vs(ds(Env),Name),
             rcov= ~ vs(ds(Env),units),
             data=DT)

which is the same that fitting the models by separate. On the other hand, if you assume GxE exist, the most typical model is the compound symmetry model, which assumes same GxE variance in all environments:

## Compound simmetry (CS) model
ans1 <- mmer(Yield~Env,
             random= ~ Name + Env:Name,
             rcov= ~ units,
             data=DT)

you can also assume that each environment has a different GxE variance:

## Compound simmetry (CS) + Diagonal (DIAG) model
ans2 <- mmer(Yield~Env,
             random= ~Name + vs(ds(Env),Name),
             rcov= ~ vs(ds(Env),units),
             data=DT)

and the most complex model estimates all genetic variance and covariance components:

## Unstructured (US) model
ans3 <- mmer(Yield~Env,
             random=~ vs(us(Env),Name),
             rcov=~vs(us(Env),units), 
             data=DT) 

By modeling better the GxE you can increase the heritability by propagating the genetic signal among environments.

I hope this helps. Cheers

Covaruber
  • 336
  • 1
  • 4