Stability has two meanings, and the methods of the package answer different questions. This vignette matches the question to the function.
2 Two concepts of stability
Static (biological) stability: a genotype yields the same everywhere. Its measure is the variance over environments (stab_measures(), column Var). Static stability is usually bought with low yield.
Dynamic (agronomic) stability: a genotype follows the average response of all genotypes, ranking the same in good and poor environments. Its measures are the ecovalence, the stability variance, the regression parameters and the AMMI statistics (Becker and Leon 1988). Breeders mostly want dynamic stability combined with high yield.
3 Decision table
Question
Function
Is the interaction significant, and how large?
add_anova()
Can the environments be pooled? How precise is each?
indiv_anova()
How does each genotype respond to better environments?
stab_reg(), er_anova()
What share of the interaction does each genotype carry?
stab_measures()
Which genotypes are unstable (tested)? Which to select for yield and stability?
stab_par()
A simple ranking of yield and stability together
stab_kang(), stab_fox()
Which genotype is safest when a poor yield must be avoided (risk set by alpha)?
stab_eskridge(), stab_reliability()
Which genotype is closest to the best in every environment?
stab_superiority()
Which genotypes keep their rank (nonparametric, with tests)?
stab_huehn()
How many patterns of interaction are there, and which genotypes follow them?
ammi(), ammi_biplot()
An AMMI-based stability ranking
stab_asv(), stab_masv(), stab_dist()
Which genotype wins where? Which are the mega-environments? Which test environments are best?
gge_biplot() (vignette 7 shows which .which and .svp to use)
What are the means and winners of each environment?
ge_means(), ge_effects()
What does a result mean?
stab_interpret()
4 Columns and data
d <- ge_datanames(d)[names(d) =="Yield"] <-"GrainYield"k <-stab_kang(.data = d , .y ="GrainYield" , .rep = Rep , .gen = Gen , .env = Env )head(x = k$Kang, n =3)
Columns are given by name, as strings or as vectors. Every genotype must appear in every environment; a missing plot is allowed (cell means and the sequential analysis of variance are then used), a missing genotype-environment cell is reported:
[1] "add_anova(): 1 genotype-environment combination(s) have no data (for example genotype PR115 in environment FSD); every genotype must be grown in every environment."
5 Summary
Decide first whether the interaction matters (add_anova()), then which kind of stability is wanted; combine one regression or variance method with one multivariate view (AMMI or GGE).
6 References
Becker, H. C. and Leon, J. (1988). Stability analysis in plant breeding. Plant Breeding, 101(1), 1–23.