一维坐标中的离群点检测
一、箱线法
data0=xlsread('F:\数据一.xls');[m,n]=size(data0);w1=round(m/4); %第一四分位地位,%m1=m/2%中位数地位,w3=round(3*m/4);%第三四分位地位%变量1的异样值解决bl1=data0(:,1); %在这里定义检索的范畴[a1,b1]=sort(bl1)%[a,b]=sort(x);是从小到大排列,a是排序后后果,b是a后果中各元素的原始地位。q11=a1(w1,1); %第一四分位数q13=a1(w3,1); %第三四分位数qr1=q13-q11; %四分位距sx1=q13+1.5*qr1; %下限xx1=q11-1.5*qr1; %上限ycz1=[];%异样值矩阵s1=1;%异样值被定义为小于Q1-1.5IQR或大于Q3+1.5IQR的值。尽管这种规范有点任意性,但它来源于教训判断,教训表明它在解决须要特地留神的数据方面体现不错。 for i=1:m if bl1(i,1)>sx1||bl1(i,1)<xx1 ycz1(s1,1)=bl1(i,1); ycz1(s1,2)=i; s1=s1+1; endendycz1 %输入离群点
二、3西格玛办法(拉伊达准则)
data0=xlsread('F:\数据一.xls');%变量1的异样值解决bl1=data0(:,1); %在这里定义检索的范畴[m,n]=size(bl1);ave=mean(bl1)%均值sigma=sqrt((bl1'-ave)*(bl1-ave)/m)jicha=max(bl1)-min(bl1);%极差%要求数据遵从正态分布,认为大于+3或小于—3的试验数据值作为异样值,其中为数据均值,为数据标准差 sx=ave+3*sigmaxx=ave-3*sigmaycz=[];zcz=[];s=1;s1=1;for i=1:m if bl1(i,1)<xx||bl1(i,1)>sx ycz(s,1)=bl1(i,1); ycz(s,2)=i; s=s+1; endendycz %输入离群点