小白MATLAB-箱图和箱图IQR分析
boxplot函数介绍
boxplot(X,notch,‘sym’,vert,whis)
notch=1-产生凹盒图,notch=0-产生矩箱图
sym-图形的符号,默认为“+”
vret=1-竖直盒图,vert=0-水平盒图
whis为“须”图长度,默认为1.5,whis=0,用sym符号来显
示盒外数据。
注:boxplot函数非常适用于高维数据分析,以矩阵中一列为一维进行分析
例子
%例子
a=[2 3 4 5 6]';b=[10 11 100 13 14]';c=[19 200 22 24 26]';
d=[a b c];
boxplot(d,0,'*',1,0)
%直接得出来的图形不美观,最好进行一下美化
箱线图IQR分析
IQR分析
对序列数据按照从小到大的顺序排列
1/4处为下分位值Q1,3/4处为上分位值Q2
四分位间距:IQR=Q2-Q1
IQR准则下异常值探测区间为[Q1-1.5IQR,Q2+1.5IQR]
在这个区间之外的记为异常值
例子
%all_year是数据;Q1各个指标的上四分位;Q2为各个指标的下四分位数;IQR为四分位间距
all_year=[BE_PS,CCR,CR_PS,NAV_PS,NCF_PS,NP_GR,NPR,OEBT,OI_PS,OP_GR,OR_GR,R_OA];
%去除最后一行数据,对于该案例来说最后一行数据没用
all_year(2,:)=[];
boxplot(all_year,0,'+',1,0);
%prctile函数寻找分位点
Q1=prctile(all_year,25);Q2=prctile(all_year,75);
IQR=Q2-Q1;%四分位间距
%寻找探测区间之外的
%find函数给出的是单一索引
num=find(all_year<Q1-1.5.*IQR|all_year>Q2+1.5.*IQR)
year(num)