# performance: Performance calculation for soft classification In softclassval: Soft Classification Performance Measures

## Description

These performance measures can be used with prediction and reference being continuous class memberships in [0, 1].

Calculate the soft confusion matrix

## Usage

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17``` ```confusion(r = stop("missing reference"), p = stop("missing prediction"), groups = NULL, operator = "prd", drop = FALSE, .checked = FALSE) confmat(r = stop("missing reference"), p = stop("missing prediction"), ...) sens(r = stop("missing reference"), p = stop("missing prediction"), groups = NULL, operator = "prd", op.dev = dev(match.fun(operator)), op.postproc = postproc(match.fun(operator)), eps = 1e-08, drop = FALSE, .checked = FALSE) spec(r = stop("missing reference"), p = stop("missing prediction"), ...) ppv(r = stop("missing reference"), p = stop("missing prediction"), ..., .checked = FALSE) npv(r = stop("missing reference"), p = stop("missing prediction"), ..., .checked = FALSE) ```

## Arguments

 `r` vector, matrix, or array with reference. `p` vector, matrix, or array with predictions `groups` grouping variable for the averaging by `rowsum`. If `NULL`, all samples (rows) are averaged. `operator` the `operators` to be used `drop` should the results possibly be returned as vector instead of 1d array? (Note that levels of `groups` are never dropped, you need to do that e.g. by `factor`.) `.checked` for internal use: the inputs are guaranteed to be of same size and shape. If `TRUE`, `confusion` omits input checking `...` handed to `sens` `op.dev` does the operator measure deviation? `op.postproc` if a post-processing function is needed after averaging, it can be given here. See the example. `eps` limit below which denominator is considered 0

## Details

The rows of `r` and `p` are considered the samples, columns will usually hold the classes, and further dimensions are preserved but ignored.

`r` must have the same number of rows and columns as `p`, all other dimensions may be filled by recycling.

`spec`, `ppv`, and `npv` use the symmetry between the performance measures as described in the article and call `sens`.

## Value

numeric of size (ngroups x `dim (p) [-1]`) with the respective performance measure

Claudia Beleites

## References

see the literature in `citation ("softclassval")`

Operators: `prd`
For the complete confusion matrix, `confmat`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28``` ```ref <- softclassval:::ref ref pred <- softclassval:::pred pred ## Single elements or diagonal of confusion matrix confusion (r = ref, p = pred) ## complete confusion matrix cm <- confmat (r = softclassval:::ref, p = pred) [1,,] cm ## Sensitivity-Specificity matrix: cm / rowSums (cm) ## Matrix with predictive values: cm / rep (colSums (cm), each = nrow (cm)) ## sensitivities sens (r = ref, p = pred) ## specificities spec (r = ref, p = pred) ## predictive values ppv (r = ref, p = pred) npv (r = ref, p = pred) ```