R中异常值检测

data1=complete.cases(selectdata)  #布尔判断
# true代表1,false代表0
sum(complete.cases(selectdata))  #完整数据200条
sum(!complete.cases(selectdata))  #不完整数据1条
mean(!complete.cases(selectdata))  #缺失比例  1/201
selectdata[!complete.cases(selectdata),]  #布尔条件筛选
sp=boxplot(selectdata$销量,boxwex=0.7)
sp$out
title("销量异常值检测箱形图")
xi=1.1
sd.s=sd(selectdata[complete.cases(selectdata),]$销量)
mn.s=mean(selectdata[complete.cases(selectdata),]$销量)
points(xi,mn.s,col='red',pch=19)
arrows(xi,mn.s-sd.s,xi,mn.s+sd.s,code = 3,col = 'pink',angle = 60,length = .1)
text(rep(c(1.05,0.95),length(sp$out)/2),sp$out,sp$out,col = 'green')

表格数据如下:
在这里插入图片描述
第一步检测数据缺失情况,利用complete.case()函数
第二步筛选完整数据作箱型图,判断异常值
这里用到第二种
在这里插入图片描述
各参数含义:
x数据
range 须从盒子伸出多远
width 箱体宽度
varwidth : 逻辑值,控制箱体的宽度, 只有图中有多个箱体时才发挥作用,默认为FALSE
notch:中位值处切口逻辑值
names:分组标签
border:箱体中线条颜色
pars:比例系数
输出值
在这里插入图片描述
stats:
在这里插入图片描述
conf:切口的上下
out:须两端外的值
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u010380670/article/details/84829936