> head(w)
平均值 最大值 最小值
1 0.181 0.185 0.180
2 0.180 0.180 0.180
3 0.180 0.190 0.175
4 0.175 0.180 0.170
5 0.173 0.175 0.170
6 0.170 0.175 0.170 #w一共有7776行数据。
> sum(complete.cases(w)) #统计完整值的行数
[1] 7772
> sum(!complete.cases(w))#统计缺失值的行数
[1] 4
> mean(!complete.cases(w))#缺失值所占的比例
[1] 0.0005144033
> w[!complete.cases(w),]#缺失值所在的位置
平均值 最大值 最小值
180 NA NA NA
3681 NA NA NA
3689 NA NA NA
5909 NA NA NA
sp=boxplot(w[,2],boxwex=0.7)#画w中最大值这一列的箱形图
title("最大浓度异常值箱形图")
xi=1.1
points(xi,mn.s,col="red",pch=18)#平均值的位置。
sd.s=sd(w[complete.cases(w),2])#求标准差
mn.s=mean(w[complete.cases(w),2])#求平均值
arrows(xi,mn.s-sd.s,xi,mn.s+sd.s,code=3,col="blue",angle=75,length=.1) #通过箭头画上下界限。
text(rep(c(1.05,0.95),length(sp$out)/2),sp$out,sp$out,col="red")
画出来的如图所示。
请问:1、arrows(xi,mn.s-sd.s,xi,mn.s+sd.s,code=3,col="blue",angle=75,length=.1)箱形图中已经有上下界限了,用arrows()函数的作用是什么?
2、text(rep(c(1.05,0.95),length(sp$out)/2),sp$out,sp$out,col="red")这一行看不懂,请解释
3、图中数据全部叠在一块看不清楚,怎么识别到底哪个数是异常值,以及异常值所处的位置。