tidy.confusionMatrix {broom} | R Documentation

## Tidy a(n) confusionMatrix object

### Description

Tidy summarizes information about the components of a model. A model component might be a single term in a regression, a single hypothesis, a cluster, or a class. Exactly what tidy considers to be a model component varies cross models but is usually self-evident. If a model has several distinct types of components, you will need to specify which components to return.

### Usage

    ## S3 method for class 'confusionMatrix'
    tidy(x, by_class = TRUE, ...)

### Arguments

`x` | An object of class `confusionMatrix` created by a call to `caret::confusionMatrix()`.
`by_class` | Logical indicating whether or not to show performance measures broken down by class. Defaults to `TRUE`. When `by_class = FALSE` only returns a tibble with accuracy and kappa statistics.

`...`

Additional arguments. Not used. Needed to match generic signature only. Cautionary note: Misspelled arguments will be absorbed in `...`, where they will be ignored. If the misspelled argument has a default value, the default value will be used. For example, if you pass `conf.lvel = 0.9`, all computation will proceed using `conf.level = 0.95`. Additionally, if you pass `newdata = my_tibble` to an `augment()` method that does not accept a `newdata` argument, it will use the default value for the `data` argument.

### Value

A tibble::tibble with one or more of the following columns:

`term` | The name of a statistic from the confusion matrix
`class` | Which class the term is a measurement of
`estimate` | The value of the statistic
`conf.low` | Low end of 95 percent CI only applicable to accuracy
`conf.high` | High end of 95 percent CI only applicable to accuracy
`p.value` | P-value for accuracy and kappa statistics

### See Also

`tidy()`, `caret::confusionMatrix()`

### Examples

    if (requireNamespace("caret", quietly = TRUE)) {

      set.seed(27)

      two_class_sample1 <- as.factor(sample(letters[1:2], 100, TRUE))
      two_class_sample2 <- as.factor(sample(letters[1:2], 100, TRUE))

      two_class_cm <- caret::confusionMatrix(
        two_class_sample1,
        two_class_sample2
      )

      tidy(two_class_cm)
      tidy(two_class_cm, by_class = FALSE)

      # multiclass example

      six_class_sample1 <- as.factor(sample(letters[1:6], 100, TRUE))
      six_class_sample2 <- as.factor(sample(letters[1:6], 100, TRUE))

      six_class_cm <- caret::confusionMatrix(
        six_class_sample1,
        six_class_sample2
      )

      tidy(six_class_cm)
      tidy(six_class_cm, by_class = FALSE)
    }

[Package broom version 0.5.2 Index]