R: Developer function for summarizing new metrics

metric_summarizer {yardstick} | R Documentation

## Developer function for summarizing new metrics

### Description

`metric_summarizer()` is useful alongside `metric_vec_template()` for implementing new custom metrics. `metric_summarizer()` calls the metric function inside `dplyr::summarise()`. `metric_vec_template()` is a generalized function that calls the core implementation of a metric function, and includes a number of checks on the types, lengths, and argument inputs. See `vignette("custom-metrics", "yardstick")` for more information.

### Usage

    metric_summarizer(
      metric_nm,
      metric_fn,
      data,
      truth,
      estimate,
      estimator = NULL,
      na_rm = TRUE,
      event_level = NULL,
      ...,
      metric_fn_options = list()
    )

### Arguments

`metric_nm` | A single character representing the name of the metric to use in the `tibble` output. This will be modified to include the type of averaging if appropriate.
`metric_fn` | The vector version of your custom metric function. It generally takes `truth`, `estimate`, `na_rm`, and any other extra arguments needed to calculate the metric.
`data` | The data frame with `truth` and `estimate` columns passed in from the data frame version of your metric function that called `metric_summarizer()`.
`truth` | The unquoted column name corresponding to the `truth` column.
`estimate` | Generally, the unquoted column name corresponding to the `estimate` column. For metrics that take multiple columns through `...` like class probability metrics, this is a result of `dots_to_estimate()`.
`estimator` | For numeric metrics, this is left as `NULL` so averaging is not passed on to the metric function implementation. For classification metrics, this can either be `NULL` for the default auto-selection of averaging (`"binary"` or `"macro"`), or a single character to pass along to the metric implementation describing the kind of averaging to use.
`na_rm` | A `logical` value indicating whether `NA` values should be stripped before the computation proceeds. The removal is executed in `metric_vec_template()`.
`event_level` | For numeric metrics, this is left as `NULL` to prevent it from being passed on to the metric function implementation. For classification metrics, this can either be `NULL` to use the default `event_level` value of the `metric_fn` or a single string of either `"first"` or `"second"` to pass along describing which level should be considered the "event".
`...` | Currently not used. Metric specific options are passed in through `metric_fn_options`.
`metric_fn_options` | A named list of metric specific options. These are spliced into the metric function call using `!!!` from `rlang`. The default results in nothing being spliced into the call.

### Details

`metric_summarizer()` is generally called from the data frame version of your metric function. It knows how to call your metric over grouped data frames and returns a `tibble` consistent with other metrics.

### See Also

`metric_vec_template()` `finalize_estimator()` `dots_to_estimate()`

[Package yardstick version 0.0.9 Index]