Skip to contents

The breeding value of an animal for the phenotype of its group is its total breeding value, A_D + c_D A_S: its direct effect on itself plus its indirect effect on each of the n - 1 group mates (Bijma, Muir and Van Arendonk 2007). Its variance is sigma2_TBV = sigma2_AD + 2 c_D sigma_ADS + c_D^2 sigma2_AS, and T2 = sigma2_TBV / sigma2_P, which can exceed 1. The phenotypic variance is the one in h2(): sigma2_P = sigma2_AD + c_V [1 + (n - 2) r] sigma2_AS + 2 r c_D sigma_ADS + others, with c_D = (n - 1)^(1 - d) and c_V = (n - 1)^(1 - 2d) under the dilution d of the indirect() term (Bijma 2010; d = 0 is the plain sum over mates). With d = 0 and r = 0 the denominator reduces to sigma2_AD + (n - 1) sigma2_AS + others, and the direct-indirect covariance leaves it. No program reports T2 by itself; this is the formula the literature computes by hand (Leite et al. 2023 use it with the average group size and relationship).

Usage

t2(fit, n, r = 0, trait = NULL, weight = NULL, scale = FALSE)

Arguments

fit

result of model(), model_mt() or model_threshold() with an indirect() term

n

group size, one number or a vector of sizes

r

average additive relationship between group mates (0 for unrelated mates)

trait

for a multi-trait fit, which trait; all of them by default

weight, scale

as in h2()

Value

data.frame with one row per trait and size: trait, n, r, var_tbv, var_p, t2, h2_direct (sigma2_AD / sigma2_P) and the delta-method standard errors se_t2 and se_h2_direct (NA when the fit carries no covariance of the components)

Details

Every other variance and covariance of the trait enters as in h2(), at the same group size n: the components with a relationship matrix as estimated (with metafounders and scale = TRUE, times var_scale), and a residual indirect structure declared through associative_matrix() at the variance it puts on a record of a pen of n animals, (n - 1)^(1 - 2d) times its component (before this version it entered with coefficient 1). var(residual) is read at weight, by default the harmonic mean weight of the records; a fit made by indirect_residual() reads it at the group size, 1 + (n - 1)^(1 - 2d) k times var(residual). With pens of different sizes, give the sizes as a vector and read one row per size, or give the average size, the convention of the literature.

A fit that did not converge is read at its last iterate, with a warning. When the fit reports the information matrix SINGULAR along a set of components that includes the direct or the indirect variance or their covariance, t2, var_tbv and se_t2 are NA; h2_direct and se_h2_direct are NA when the set includes the direct variance, the numerator, as in h2(), and are kept otherwise. The warning names the components and says which columns are NA.

On a model_threshold() fit the numbers are on the liability scale, with the residual fixed at 1 in the denominator; with pens of unequal size and an environmental effect of the mates that residual is a convention rather than the variance of every record (the limit declared in model_threshold()). A model_survival() fit is refused: the frailty model has no residual variance, so there is no phenotypic variance on the log-hazard scale to divide by. A gibbs() chain is refused too, as in h2(): it has no point estimate, and its T2 is the posterior of the ratio, computed from each row of fit$samples with the formulas above.

References

Bijma, P., Muir, W.M. & Van Arendonk, J.A.M. (2007). Multilevel selection 1: quantitative genetics of inheritance and response to selection. Genetics 175:277-288.

Bijma, P. (2010). Multilevel selection 4: modeling the relationship of indirect genetic effects and group size. Genetics 186:1029-1031.

Leite, N.G. et al. (2023). Genetics Selection Evolution 55:47.

See also