得到一组数据:
- 箱式图排除异常值
箱式图
操作步骤:
打开spss软件,输入相关数据 à 在“变量视图”更改名称 à 点击“图形”à 点击“图表构建器” à 在图库栏点击“箱图” à 双击最后一个1-D框图形式的箱图à 拖动c语言至右侧x轴 à 点击“确定”
运行结果:
结果分析:
为了方便分析,我把c语言的第一个数据改成了1,由图形显示可以看出出现了一个下标为1的星形点,说明了这个第一个数据偏离总数据,视为异常值,分析的时候可以剔除。
- 然后进行正态性初步检验
- 方法一:Q-Q图和P-P图检验:
操作步骤:
打开spss软件,输入相关数据 à 在“变量视图”更改名称 à 点击“分析”à 点击“描述统计” à 选择“Q-Q图”或者“p-p图” à 拖动c语言至变量框 à 检验分布选择“正态” à 点击“确定”
运行结果及分析:
Q-Q图就是由标准正态分布的分位数为横坐标,样本值为纵坐标的散点图其斜率为标准差,截距为均值,由图形可知,在60到70之间的数据绝大多数都偏离正态分布,所以c语言不符合正态分布。
p-p图就是由标准正态分布的累积比例为横坐标,样本值的累积比例为纵坐标的散点图,同Q-Q图的分析,60到70的样本数据偏离正态分布的标准值,所以我们认为c语言不服从正态分布。
c语言的去趋势正态Q-Q图用于表示各个数据的残差,由上图可知,在70到80之间的数据残差的绝对值均比其他数据小,如果将70到80的数据拿出检验其正态性,一定比剩余数据好。但此样本的残差绝对值绝大数大于0.05,所以我们认为c语言不符合正态分布。
由图可知0.2到0.4之间的数据与标准线的距离较大并且大于0.05,表明样本数据的离散程度在累计比例0.2到0.4的区间最大,也就成绩在60到70之间的数据离散程度最大,所以我们认为c语言不服从正态分布
- 最后进行严格检验
- B=rand(1,100);
- A=B';
- x = A;
- alpha = 0.01;
- % 正态分布判断
- [mu, sigma] = normfit(x);
- p1 = normcdf(x, mu, sigma);
- [H1,s1] = kstest(x, [x, p1], alpha);
- n = length(x);
- if H1 == 0
- disp('该数据源服从正态分布。')
- else
- disp('该数据源不服从正态分布。')
- end
- x2=A;
- alpha = 0.01;
- % 指数分布判断
- mu=expfit(x2,alpha);
- p4=expcdf(x2,mu);
- [H4,s4]=kstest(x2,[x2,p4],alpha);
- if H4==0
- disp('该数据源服从指数分布。')
- else
- disp('该数据源不服从指数分布。')
- end
- x1= A;
- alpha = 0.01;
- % 伽马分布判断
- phat=gamfit(x1,alpha);
- p2=gamcdf(x1,phat(1),phat(2));
- [H2,s2]=kstest(x1,[x1,p2],alpha);
- if H2==0
- disp('该数据源服从γ分布。')
- else
- disp('该数据源不服从γ分布。')
- end
- x3= A;
- alpha = 0.01;
- % 泊松分布判断
- lamda=poissfit(x3,alpha);
- p3=poisscdf(x3,lamda);
- [H3,s3]=kstest(x3,[x3,p3],alpha);
- if H3==0
- disp('该数据源服从泊松分布。')
- else
- disp('该数据源不服从泊松分布。')
- end
- x4= A;
- alpha = 0.01;
- % 均匀分布判断
- [ahat, bhat] = unifit(x4);
- p1 = unifcdf(x4, ahat, bhat);
- [h1, s1] = kstest(x4, [x4, p1], 0.05);
- if h1==0
- disp('该数据源服从标准均匀分布。')
- else
- disp('该数据源不服从标准均匀分布。')
- end
输出:
该数据源服从正态分布。
该数据源不服从指数分布。
该数据源服从γ分布。
该数据源不服从泊松分布。
该数据源服从标准均匀分布。