本文结合R语言,展示了异常检测的案例,主要内容如下:
(1)单变量的异常检测
(2)使用LOF(local outlier factor,局部异常因子)进行异常检测
(3)通过聚类进行异常检测
(4)对时间序列进行异常检测
单变量异常检测
本部分展示了一个单变量异常检测的例子,并且演示了如何将这种方法应用在多元数据上。在该例中,单变量异常检测通过boxplot.stats()函数实现,并且返回产生箱线图的统计量。在返回的结果中,有一个部分是out,它结出了异常值的列表。更明确点,它列出了位于极值之外的胡须。参数coef可以控制胡须延伸到箱线图外的远近。在R中,运行?boxplot.stats可获取更详细的信息。
如图呈现了一个箱线图,其中有四个圈是异常值。

如上的单变量异常检测可以用来发现多元数据中的异常值,通过简单搭配的方式。在下例中,我们首先产生一个数据框df,它有两列x和y。之后,异常值分别从x和y检测出来。然后,我们获取两列都是异常值的数据作为异常数据。
在下图中,异常值用红色标记为"+"
本文利用R语言展示了异常检测的多个方法,包括单变量检测、使用LOF(局部异常因子)、通过聚类和对时间序列的异常检测。文中详细解释了每种方法的原理,并给出了具体示例,帮助读者理解如何在实际应用中发现和处理异常值。
订阅专栏 解锁全文
2984

被折叠的 条评论
为什么被折叠?



