云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > R语言学习系列16-异常值处理

R语言学习系列16-异常值处理

  • 62 次阅读
  • 3 次下载
  • 2025/6/16 17:50:28

16. 异常值处理

目录:

一. 用箱线图检测异常值

二.使用局部异常因子法(LOF法)检测异常值 三.用聚类方法检测异常值 四.检测时间序列数据中的异常值 五.基于稳健马氏距离检测异常值 正文:

异常值,是指测量数据中的随机错误或偏差,包括错误值或偏离均值的孤立点值。在数据处理中,异常值会极大的影响回归或分类的效果。

为了避免异常值造成的损失,需要在数据预处理阶段进行异常值检测。另外,某些情况下,异常值检测也可能是研究的目的,例如,数据造假的发现、电脑入侵的检测等。

一、用箱线图检测异常值

在一条数轴上,以数据的上下四分位数(Q1-Q3)为界画一个矩形盒子(中间50%的数据落在盒内);在数据的中位数位置画一条线

段为中位线;用◇标记数据的均值;默认延长线不超过盒长的1.5倍,之外的点认为是异常值(用○标记)。

盒形图的主要应用就是,剔除数据的异常值、判断数据的偏态和尾重。

R语言实现,使用函数boxplot.stats(),基本格式为:

[stats, n, conf, out]=

boxplot.stats(x, coef=1.5, do.conf=TRUE, do.out=TRUE)

其中,x为数值向量(NA、NaN值将被忽略);coef为盒须的长度为几倍的IQR(盒长),默认为1.5;do.conf和do.out设置是否输出conf和out

返回值:stats返回5个元素的向量值,包括盒须最小值、盒最小值、中位数、盒最大值、盒须最大值;n返回非缺失值的个数;conf返回中位数的95%置信区间;out返回异常值。

单变量异常值检测:

set.seed(2016)

x<-rnorm(100)#生成100个服从N(0,1)的随机数

summary(x)#x的汇总信息

Min. 1st Qu.Median Mean 3rd Qu. Max.

-2.7910 -0.7173 -0.2662 -0.1131 0.5917 2.1940

boxplot.stats(x)#用箱线图检测x中的异常值 $stats

[1] -2.5153136 -0.7326879 -0.2662071 0.5929206 2.1942200

$n

[1] 100 $conf

[1] -0.47565320 -0.05676092 $out

[1] -2.791471 boxplot(x)#绘制箱线图

多变量异常值检测:

x<-rnorm(100) y<-rnorm(100)

df<-data.frame(x,y)#用x,y生成两列的数据框 head(df) x y

1 0.41452353 0.4852268 2 -0.47471847 0.6967688 3 0.06599349 0.1855139 4 -0.50247778 0.7007335 5 -0.82599859 0.3116810 6 0.16698928 0.7604624

#寻找x为异常值的坐标位置

a<-which(x %in% boxplot.stats(x)$out) a

[1] 78 81 92

#寻找y为异常值的坐标位置

b<-which(y %in% boxplot.stats(y)$out) b

[1] 27 37

intersect(a,b)#寻找变量x,y都为异常值的坐标位置 integer(0)

plot(df)#绘制x, y的散点图

p2<-union(a,b)#寻找变量x或y为异常值的坐标位置 [1] 78 81 92 27 37

points(df[p2,],col=\#标记异常值

二、使用局部异常因子法(LOF法)检测异常值

局部异常因子法(LOF法),是一种基于概率密度函数识别异常值的算法。LOF算法只对数值型数据有效。

算法原理:将一个点的局部密度与其周围的点的密度相比较,若前者明显的比后者小(LOF值大于1),则该点相对于周围的点来说

搜索更多关于: R语言学习系列16-异常值处理 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

16. 异常值处理 目录: 一. 用箱线图检测异常值 二.使用局部异常因子法(LOF法)检测异常值 三.用聚类方法检测异常值 四.检测时间序列数据中的异常值 五.基于稳健马氏距离检测异常值 正文: 异常值,是指测量数据中的随机错误或偏差,包括错误值或偏离均值的孤立点值。在数据处理中,异常值会极大的影响回归或分类的效果。 为了避免异常值造成的损失,需要在数据预处理阶段进行异常值检测。另外,某些情况下,异常值检测也可能是研究的目的,例如,数据造假的发现、电脑入侵的检测等。 一、用箱线图检测异常值 在一条数轴上,以数据的上下四分位数(Q1-Q3)为界画一个矩形盒子(中间50%的数据落在盒内);在数据的中位数位置画一条线段为中位线;用◇标记数据的均值;默认延长线不超过盒长

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com