【问题标题】:Interpreting Anomaly detection R values解释异常检测 R 值
【发布时间】:2021-03-08 04:44:48
【问题描述】:

我有一项任务需要检测数据集中的异常情况。我在 R 中使用“异常化”包,想知道如何解释“异常化”函数的以下输出值:

余数_L1 余数_L2

我查看了文档,但找不到这些值的计算方法。有人能解释一下这个计算吗?

Anomalize output

【问题讨论】:

    标签: r anomaly-detection


    【解决方案1】:

    anomolize documentation 给出了如何将anomolize() 应用于时间序列的一个很好的示例

    这会为 CRAN tidyverse 下载生成 Remainder_L1Remainder_L2 值(该数据来自 anomolize 包,因此无需导入数据,只需运行以下代码即可查看它如何生成列

    
    # install.packages("anomalize")
    
    library(tidyverse)
    library(tibbletime)
    library(anomalize)
    
    
    tidyverse_cran_downloads %>%
        time_decompose(count, merge = TRUE) %>%
        anomalize(remainder) 
    
     #   package date       count observed season trend remainder remainder_l1 remainder_l2 anomaly
     #   <chr>   <date>     <dbl>    <dbl>  <dbl> <dbl>     <dbl>        <dbl>        <dbl> <chr>  
     # 1 broom   2017-01-01  1053    1053. -1007. 1708.    352.         -1725.        1704. No     
     # 2 broom   2017-01-02  1481    1481    340. 1731.   -589.         -1725.        1704. No     
     # 3 broom   2017-01-03  1851    1851    563. 1753.   -465.         -1725.        1704. No     
     # 4 broom   2017-01-04  1947    1947    526. 1775.   -354.         -1725.        1704. No     
     # 5 broom   2017-01-05  1927    1927    430. 1798.   -301.         -1725.        1704. No  
    

    这些值是什么意思?从anomolize source code我们看到:

    “remainder_l1”(异常下限),“remainder_l2”(异常上限)

    在上面的示例中,在第一行中,anomolize() 会将值 (1053) 如果小于 -1725 或大于 1725 视为异常值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-01
      • 2020-02-23
      • 2019-07-24
      • 1970-01-01
      • 1970-01-01
      • 2016-02-28
      • 2016-05-04
      相关资源
      最近更新 更多