当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R yardstick summary.conf_mat 混淆矩阵的汇总统计


混淆矩阵的各种统计摘要在小标题中生成和返回。其中包括 sens()recall()accuracy() 等帮助页面中显示的内容。

用法

# S3 method for conf_mat
summary(
  object,
  prevalence = NULL,
  beta = 1,
  estimator = NULL,
  event_level = yardstick_event_level(),
  ...
)

参数

object

conf_mat() 的对象。

prevalence

(0, 1) 中的数字表示事件的发生率(即之前的事件)。如果保留默认值,则使用数据来导出该值。

beta

用于衡量f_meas() 的精度和召回率的数值。

estimator

其中之一: "binary""macro""macro_weighted""micro" 指定要完成的平均类型。 "binary" 仅与两类情况相关。其他三种是计算多类指标的通用方法。默认会根据 estimate 自动选择 "binary""macro"

event_level

单个字符串。 "first""second" 指定将truth 的哪个级别视为"event"。此参数仅适用于 estimator = "binary" 。默认使用内部帮助程序,通常默认为 "first" ,但是,如果设置了已弃用的全局选项 yardstick.event_first ,则将使用该帮助程序并发出警告。

...

目前未使用。

包含各种分类指标的小标题。

相关级别

在计算二元分类指标时,对于哪个因子级别应自动被视为 "event" 或 "positive" 结果,没有通用约定。在 yardstick 中,默认使用第一级。要更改此设置,请将参数 event_level 更改为 "second" 以将因子的最后一个级别视为感兴趣级别。对于涉及 one-vs-all 比较(例如宏平均)的多类扩展,此选项将被忽略,并且 "one" 级别始终是相关结果。

也可以看看

例子

data("two_class_example")

cmat <- conf_mat(two_class_example, truth = "truth", estimate = "predicted")
summary(cmat)
#> # A tibble: 13 × 3
#>    .metric              .estimator .estimate
#>    <chr>                <chr>          <dbl>
#>  1 accuracy             binary         0.838
#>  2 kap                  binary         0.675
#>  3 sens                 binary         0.880
#>  4 spec                 binary         0.793
#>  5 ppv                  binary         0.819
#>  6 npv                  binary         0.861
#>  7 mcc                  binary         0.677
#>  8 j_index              binary         0.673
#>  9 bal_accuracy         binary         0.837
#> 10 detection_prevalence binary         0.554
#> 11 precision            binary         0.819
#> 12 recall               binary         0.880
#> 13 f_meas               binary         0.849
summary(cmat, prevalence = 0.70)
#> # A tibble: 13 × 3
#>    .metric              .estimator .estimate
#>    <chr>                <chr>          <dbl>
#>  1 accuracy             binary         0.838
#>  2 kap                  binary         0.675
#>  3 sens                 binary         0.880
#>  4 spec                 binary         0.793
#>  5 ppv                  binary         0.909
#>  6 npv                  binary         0.739
#>  7 mcc                  binary         0.677
#>  8 j_index              binary         0.673
#>  9 bal_accuracy         binary         0.837
#> 10 detection_prevalence binary         0.554
#> 11 precision            binary         0.819
#> 12 recall               binary         0.880
#> 13 f_meas               binary         0.849

library(dplyr)
library(tidyr)
data("hpc_cv")

# Compute statistics per resample then summarize
all_metrics <- hpc_cv %>%
  group_by(Resample) %>%
  conf_mat(obs, pred) %>%
  mutate(summary_tbl = lapply(conf_mat, summary)) %>%
  unnest(summary_tbl)

all_metrics %>%
  group_by(.metric) %>%
  summarise(
    mean = mean(.estimate, na.rm = TRUE),
    sd = sd(.estimate, na.rm = TRUE)
  )
#> # A tibble: 13 × 3
#>    .metric               mean       sd
#>    <chr>                <dbl>    <dbl>
#>  1 accuracy             0.709 2.47e- 2
#>  2 bal_accuracy         0.720 1.92e- 2
#>  3 detection_prevalence 0.25  9.25e-18
#>  4 f_meas               0.569 3.46e- 2
#>  5 j_index              0.439 3.85e- 2
#>  6 kap                  0.508 4.10e- 2
#>  7 mcc                  0.515 4.16e- 2
#>  8 npv                  0.896 1.11e- 2
#>  9 ppv                  0.633 3.87e- 2
#> 10 precision            0.633 3.87e- 2
#> 11 recall               0.560 3.09e- 2
#> 12 sens                 0.560 3.09e- 2
#> 13 spec                 0.879 9.67e- 3
源代码:R/conf_mat.R

相关用法


注:本文由纯净天空筛选整理自Max Kuhn等大神的英文原创作品 Summary Statistics for Confusion Matrices。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。