Skip to contents

This function applies a user-supplied performance metric to a prediction result object.

Usage

custom_performance(x, custom_fun, split_list = NULL)

Arguments

x

The prediction result object.

custom_fun

The function used to compute performance metrics, i.e., custom_fun(x).

split_list

An optional named list of splitting groups. If provided, the performance metric will be computed for each group and returned as a named vector.

Value

A named vector with the calculated custom performance metric(s).

Details

The function allows users to apply a custom performance metric to a prediction result object. If a split list is provided, the performance metric will be computed for each group separately, and the results will be returned as a named vector.

Examples

cres <- binary_classification_result(
  observed  = factor(c("A", "B")),
  predicted = factor(c("A", "A")),
  probs = matrix(c(0.9, 0.1,
                   0.6, 0.4),
                 ncol = 2, byrow = TRUE,
                 dimnames = list(NULL, c("A", "B")))
)
acc_fun <- function(x) mean(x$observed == x$predicted)
custom_performance(cres, acc_fun)
#> Error in Ops.factor(x$observed, x$predicted): level sets of factors are different