This function implements the weighting method between mean performance and stability (Olivoto et al., 2019) considering different parametric and non-parametric stability indexes.

## Usage

```
mps(
.data,
env,
gen,
rep,
resp,
block = NULL,
by = NULL,
random = "gen",
performance = c("blupg", "blueg"),
stability = "waasb",
ideotype_mper = NULL,
ideotype_stab = NULL,
wmper = NULL,
verbose = TRUE
)
```

## Arguments

- .data
The dataset containing the columns related to Environments, Genotypes, replication/block and response variable(s).

- env
The name of the column that contains the levels of the environments.

- gen
The name of the column that contains the levels of the genotypes.

- rep
The name of the column that contains the levels of the replications/blocks.

- resp
The response variable(s). To analyze multiple variables in a single procedure a vector of variables may be used. For example

`resp = c(var1, var2, var3)`

.- block
Defaults to

`NULL`

. In this case, a randomized complete block design is considered. If block is informed, then an alpha-lattice design is employed considering block as random to make use of inter-block information, whereas the complete replicate effect is always taken as fixed, as no inter-replicate information was to be recovered (Mohring et al., 2015).- by
One variable (factor) to compute the function by. It is a shortcut to

`dplyr::group_by()`

.This is especially useful, for example, when the researcher want to analyze environments within mega-environments. In this case, an object of class mps_grouped is returned.- random
The effects of the model assumed to be random. Defaults to

`random = "gen"`

. See`gamem_met()`

to see the random effects assumed depending on the experimental design of the trials.- performance
Wich considers as mean performance. Either

`blupg`

(for Best Linear Unbiased Prediction) or`blueg`

(for Best Linear Unbiased Estimation)- stability
The stability method. One of the following:

`"waasb"`

The weighted average of absolute scores (Olivoto et al. 2019).`"ecovalence"`

The Wricke's ecovalence (Wricke, 1965).`"Shukla"`

The Shukla's stability variance parameter (Shukla, 1972).`"hmgv"`

The harmonic mean of genotypic values (Resende, 2007).`"s2di"`

The deviations from the Eberhart and Russell regression (Eberhart and Russell, 1966).`"r2"`

The determination coefficient of the Eberhart and Russell regression (Eberhart and Russell, 1966)..`"rmse"`

The root mean squared error of the Eberhart and Russell regression (Eberhart and Russell, 1966).`"wi"`

Annicchiarico's genotypic confidence index (Annicchiarico, 1992).`"polar"`

Power Law Residuals as yield stability index (Doring et al., 2015).`"acv"`

Adjusted Coefficient of Variation (Doring and Reckling, 2018)`"pi"`

Lin e Binns' superiority index (Lin and Binns, 1988).`"gai"`

Geometric adaptability index (Mohammadi and Amri, 2008).`"s1", "s2", "s3", and "s6"`

Huehn's stability statistics (Huehn, 1979).`"n1", "n2", "n3", and "n4"`

Thennarasu's stability statistics (Thennarasu, 1995).`"asv", "ev", "za", and "waas"`

AMMI-based stability indexes (see`ammi_indexes()`

).

- ideotype_mper, ideotype_stab
The new maximum value after rescaling the response variable/stability index. By default, all variables in

`resp`

are rescaled so that de maximum value is 100 and the minimum value is 0 (i.e.,`ideotype_mper = NULL`

and`ideotype_stab = NULL`

). It must be a character vector of the same length of`resp`

if rescaling is assumed to be different across variables, e.g., if for the first variable smaller values are better and for the second one, higher values are better, then`ideotype_mper = c("l, h")`

must be used. For stability index in which lower values are better, use`ideotype_stab = "l"`

. Character value of length 1 will be recycled with a warning message.- wmper
The weight for the mean performance. By default, all variables in

`resp`

have equal weights for mean performance and stability (i.e.,`wmper = 50`

). It must be a numeric vector of the same length of`resp`

to assign different weights across variables, e.g., if for the first variable equal weights for mean performance and stability are assumed and for the second one, a higher weight for mean performance (e.g. 65) is assumed, then`wmper = c(50, 65)`

must be used. Numeric value of length 1 will be recycled with a warning message.- verbose
Logical argument. If

`verbose = FALSE`

the code will run silently.

## Value

An object of class `mps`

with the following items.

`observed`

: The observed value on a genotype-mean basis.`performance`

: The performance for genotypes (BLUPs or BLUEs)`performance_res`

: The rescaled values of genotype's performance, considering`ideotype_mper`

.`stability`

: The stability for genotypes, chosen with argument`stability`

.`stability_res`

: The rescaled values of genotype's stability, considering`ideotype_stab`

.`mps_ind`

: The mean performance and stability for the traits.`h2`

: The broad-sense heritability for the traits.`perf_method`

: The method for measuring genotype's performance.`wmper`

: The weight for the mean performance.`sense_mper`

: The goal for genotype's performance (`l`

= lower,`h`

= higher).`stab_method`

: The method for measuring genotype's stability.`wstab`

: The weight for the mean stability.`sense_stab`

: The goal for genotype's stability (`l`

= lower,`h`

= higher).

## References

Annicchiarico, P. 1992. Cultivar adaptation and recommendation from alfalfa trials in Northern Italy. J. Genet. Breed. 46:269-278.

Doring, T.F., S. Knapp, and J.E. Cohen. 2015. Taylor's power law and the stability of crop yields. F. Crop. Res. 183: 294-302. doi:10.1016/j.fcr.2015.08.005

Doring, T.F., and M. Reckling. 2018. Detecting global trends of cereal yield stability by adjusting the coefficient of variation. Eur. J. Agron. 99: 30-36. doi:10.1016/j.eja.2018.06.007

Eberhart, S.A., and W.A. Russell. 1966. Stability parameters for comparing Varieties. Crop Sci. 6:36-40. doi:10.2135/cropsci1966.0011183X000600010011x

Huehn, V.M. 1979. Beitrage zur erfassung der phanotypischen stabilitat. EDV Med. Biol. 10:112.

Lin, C.S., and M.R. Binns. 1988. A superiority measure of cultivar performance for cultivar x location data. Can. J. Plant Sci. 68:193-198. doi:10.4141/cjps88-018

Mohammadi, R., & Amri, A. (2008). Comparison of parametric and non-parametric methods for selecting stable and adapted durum wheat genotypes in variable environments. Euphytica, 159(3), 419-432. doi:10.1007/s10681-007-9600-6

Olivoto, T., A.D.C. L\'ucio, J.A.G. da silva, V.S. Marchioro, V.Q. de Souza, and E. Jost. 2019. Mean performance and stability in multi-environment trials I: Combining features of AMMI and BLUP techniques. Agron. J. doi:10.2134/agronj2019.03.0220

Resende MDV (2007) Matematica e estatistica na analise de experimentos e no melhoramento genetico. Embrapa Florestas, Colombo

Shukla, G.K. 1972. Some statistical aspects of partitioning genotype-environmental components of variability. Heredity. 29:238-245. doi:10.1038/hdy.1972.87

Thennarasu, K. 1995. On certain nonparametric procedures for studying genotype x environment interactions and yield stability. Ph.D. thesis. P.J. School, IARI, New Delhi, India.

Wricke, G. 1965. Zur berechnung der okovalenz bei sommerweizen und hafer. Z. Pflanzenzuchtg 52:127-138.

## Author

Tiago Olivoto tiagoolivoto@gmail.com

## Examples

```
# \donttest{
library(metan)
# The same approach as mtsi()
# mean performance and stability for GY and HM
# mean performance: The genotype's BLUP
# stability: the WAASB index (lower is better)
# weights: equal for mean performance and stability
model <-
mps(data_ge,
env = ENV,
gen = GEN,
rep = REP,
resp = everything())
#> Evaluating trait GY |====================== | 50% 00:00:01
Evaluating trait HM |============================================| 100% 00:00:03
#> Method: REML/BLUP
#> Random effects: GEN, GEN:ENV
#> Fixed effects: ENV, REP(ENV)
#> Denominador DF: Satterthwaite's method
#> ---------------------------------------------------------------------------
#> P-values for Likelihood Ratio Test of the analyzed traits
#> ---------------------------------------------------------------------------
#> model GY HM
#> COMPLETE NA NA
#> GEN 1.11e-05 5.07e-03
#> GEN:ENV 2.15e-11 2.27e-15
#> ---------------------------------------------------------------------------
#> All variables with significant (p < 0.05) genotype-vs-environment interaction
#> Mean performance: blupg
#> Stability: waasb
# The mean performance and stability after rescaling
model$mps_ind
#> # A tibble: 10 × 3
#> GEN GY HM
#> <chr> <dbl> <dbl>
#> 1 G1 57.6 56.2
#> 2 G10 0 35.0
#> 3 G2 59.9 17.8
#> 4 G3 95.5 67.9
#> 5 G4 45.7 58.6
#> 6 G5 40.0 61.1
#> 7 G6 45.9 85.5
#> 8 G7 45.2 51.3
#> 9 G8 77.3 90.6
#> 10 G9 16.3 58.7
# }
```