prediction_score function

Calculate prediction score (quality of prediction)

Calculate prediction score (quality of prediction)

prediction_score(x, expected, alpha0 = NULL, alpha1 = NULL, W = NULL, ...) ## S3 method for class 'aphylo_estimates' prediction_score( x, expected = NULL, alpha0 = NULL, alpha1 = NULL, W = NULL, loo = TRUE, ... ) ## S3 method for class 'aphylo_prediction_score' print(x, ...)

Arguments

  • x: An object of class aphylo_estimates or other numeric vector-like object (see details).
  • expected: Numeric vector-like object length nn (see details). Expected values (either 0 or 1).
  • alpha0, alpha1: Probability of observing a zero an a one, respectively.
  • W: A square matrix. Must have as many rows as genes in expected.
  • ...: Further arguments passed to predict.aphylo_estimates
  • loo: Logical scalar. When loo = TRUE, predictions are preformed similar to what a leave-one-out cross-validation scheme would be done (see predict.aphylo_estimates ).

Returns

A list of class aphylo_prediction_score:

  • obs : Observed 1 - MAE.
  • obs_raw : Unnormalized (raw) scores.
  • random_raw: Unnormalized (raw) scores.
  • worse_raw : Unnormalized (raw) scores.
  • pval : Computed p-value.
  • worse : Reference of worse case.
  • predicted : Numeric matrix with observed predictions.
  • expected : Integer matrix with expected annotations.
  • random : Random score (null).
  • alpha0 : The passed alpha parameters.
  • alpha1 : The passed alpha parameters.
  • auc : An object of class aphylo_auc.
  • obs.ids : Indices of the ids.
  • leaf.ids : IDs of the leafs (if present).
  • tree : Of class phylo.

Details

In the case of prediction_score, ... are passed to predict.aphylo_estimates. The function will accept x as a numeric vector, list of vectors, or matrix. Otherwise, it will try to coerce it to a matrix. If it fails, it will throw an error.

In the case of the method for aphylo estimates, the function takes as a reference using alpha equal to the proportion of observed tip annotations that are equal to 1, this is:

mean(x$dat$tip.annotation[x$dat$tip.annotation != 9L], na.rm = TRUE)

Examples

# Example with prediction_score --------------------------------------------- set.seed(11552) ap <- raphylo( 50, P = 1, Pi = 0, mu_d = c(.8,.2), mu_s = c(0.1,0.1), psi = c(0,0) ) ans <- aphylo_mcmc( ap ~ mu_d + mu_s + Pi, control = list(nsteps=2e3, thin=20, burnin = 500), priors = bprior(c(9, 1, 1, 1, 5), c(1, 9, 9, 9, 5)) ) (pr <- prediction_score(ans, loo = TRUE)) plot(pr)
  • Maintainer: George Vega Yon
  • License: MIT + file LICENSE
  • Last published: 2024-12-03