Additive Genetic Variance Estimates and "Root" Value Variation

18 views
Skip to first unread message

Thomas Kono

unread,
Mar 21, 2024, 5:18:20 PM3/21/24
to Aster Analysis User Group
Hello,

We have been working through an Aster analysis of some Chamaecrista data, and we are observing some odd behavior with a random effects Aster model. A very brief description of the experiment is required: individuals with known parentage are planted into an experimental field site, with up to five full siblings per planting location. Life history data are aggregated across the individuals planted into the location, taking advantage of the "predecessor is sample size" property of Aster models. We are using the "predict.aster()" function and a parametric bootstrap to obtain estimates of additive genetic variance for fitness among paternal half siblings (same as the tutorials and Kulbaba et al. 2019). The function we are using for calculating additive genetic variance is in the attached R snippet.

Our graphical model is as follows:

Initial --> Germination --> Fruits --> N. Fruits --> N. Seeds

with the arrows being Bernoulli, Bernoulli, 0-truncated Poisson, and Poisson, respectively. "Initial" represents the number of seeds planted into a planting location, which takes an integer value from 1 to 5.

When choosing an arbitrary individual from which to generate estimates, we observe a large degree of variation in the estimates. They scale with the square of the value of "Initial":

Initial = 1; VA(W) = ~3.8
Initial = 2; VA(W) = ~15.2 = ~3.8 * 2^2
Initial = 3; VA(W) = ~34.2 = ~3.8 * 3^2
Initial = 4; VA(W) = ~61.0 = ~3.8 * 4^2
Initial = 5; VA(W) = ~95.0 = ~3.8 * 5^2

This leads us to the following questions:

1. Is our function correctly estimating additive genetic variance? We borrowed heavily from past published code that performs this calculation, and we noticed that the code calculates several values that are not actually used. "hoom.star" and the "map" function are not actually called. There are also many calls to "predict.aster()" which are not actually used; only the "hoom.star2" value seems to actually be used for the calculation.


2. Is there something we need to do to handle the variation in "Initial" value properly? The fact that estimates scale with the square of the "Initial" value suggests to us that it is a technical artifact that must be accounted for, but we are unsure of the right way to proceed.

Please let us know if you need an RDS file. For reference, we are using R version 4.3.3 with aster 1.1-3 and trust 0.1-8.
paternal_halfsib_vaw.R
Reply all
Reply to author
Forward
0 new messages