Learn R Programming

ProbBreed (version 1.0.4.9)

bpsi: Bayesian Probabilistic Selection Index (BPSI)

Description

This function estimates the genotype's merit for multiple traits using the probabilities of superior performance across environments.

Usage

bpsi(problist, increase = NULL, lambda = NULL, int, save.df = FALSE)

Value

The function returns an object of class bpsi, which contains two lists, one with the BPSI- Bayesian Probabilistic Selection Index, and another with the original data- with across-environments probabilities of superior performance for each trait.

Arguments

problist

A list of object of class probsup, obtained from the prob_sup function

increase

Optional logical vector with size corresponding to the number of traits of problist, in the same order.TRUE if the selection is for increasing the trait value, FALSE otherwise. If not declared, bpsi will consider the information provided in prob_sup

lambda

A numeric representing the weight of each trait. Defaults to 1 (equal weights). The trait with more economic interest should be greater.

int

A numeric representing the selection intensity (between 0 and 1), considering the selection index.

save.df

Logical. Should the data frames be saved in the work directory? TRUE for saving, FALSE (default) otherwise.

Author

José Tiago Barroso Chagas

Details

  • Bayesian Probabilistic Selection Index

$$BPSI_i = \sum_{m=1}^{t} \frac{\gamma_{pt} -\gamma_{it} }{(1/\lambda_t)}$$

where \(\gamma_p\) is the probability of superior performance of the worst genotype for the trait \(t\), \(\gamma\) is the probability of superior performance of genotype \(i\) for trait \(t\), \(t\) is the total number of traits evaluated, \(\left(m = 1, 2, ..., t \right)\), and \(\lambda\) is the weight for each trait \(t\).

More details about the usage of bpsi can be found at https://tiagobchagas.github.io/BPSI/.

References

Chagas, J. T. B., Dias, K. O. G., Carneiro, V. Q., Oliveira, L. M. C., Nunes, N. X., Pereira Júnior, J. D., Carneiro, P. C. S., & Carneiro, J. E. S. (2025). Bayesian probabilistic selection index in the selection of common bean families. Crop Science, 65(3). tools:::Rd_expr_doi("10.1002/CSC2.70072")

See Also

plot.bpsi()

Examples

Run this code
# \donttest{



mod = bayes_met(data = soy_pat,
                gen = "gen",
                loc = "env",
                repl = NULL,
                trait = "PH",
                reg = NULL,
                year = NULL,
                res.het = TRUE,
                iter = 2000, cores = 2, chain = 4)


mod2 = bayes_met(data = soy_pat,
                 gen = "gen",
                 loc = "env",
                 repl = NULL,
                 trait = "GY",
                 reg = NULL,
                 year = NULL,
                 res.het = TRUE,
                 iter = 2000, cores = 2, chain = 4)

mod3 = bayes_met(data = soy_pat,
                 gen = "gen",
                 loc = "env",
                 repl =  NULL,
                 trait = "NDM",
                 reg = NULL,
                 year = NULL,
                 res.het = TRUE,
                 iter = 2000, cores = 2, chain = 4)



models=list(mod,mod2,mod3)
names(models) <- c("PH","GY","NDM")
increase = c(FALSE,TRUE,FALSE)
names(increase) <- names(models)

probs = list()
for (i in names(models)) {
  outs <- extr_outs(model = models[[i]],
                    probs = c(0.05, 0.95),
                    verbose = TRUE)
  probs[[i]] <- prob_sup(
    extr = outs,
    int = .2,
    increase = increase[[i]],
    save.df = FALSE,
    verbose = TRUE
  )

}

index = bpsi(
  problist = probs,
  increase = increase,
  int = 0.1,
  lambda = c(1, 2, 1),
  save.df = FALSE
)
# }

Run the code above in your browser using DataLab