第4章 概率统计
格式 p = signrank(X,Y,alpha) % X、Y为两个总体的样本,长度必须相同,alpha为
显著性水平,P两个样本X和Y的中位数相等的概率,p接近于0则可对原假设质疑。
[p,h] = signrank(X,Y,alpha) % h为检验结果:h=0表示X与Y的中位数之差不
显著,h=1表示X与Y的中位数之差显著。
[p,h,stats] = signrank(x,y,alpha) % stats中包括:signrank为符号秩统计量的值以
及zval为过去计算p的正态统计量的值。
例4-78 两个正态随机样本的中位数相等的假设检验
>> x=normrnd(0,1,20,1); >> y=normrnd(0,2,20,1);
>> [p,h,stats]=signrank(x,y,0.05) p =
0.3703 h = 0 stats =
zval: -0.8960 signedrank: 81
结果表明:h=0表示X与Y的中位数之差不显著
4.8.6 两个总体中位数相等的假设检验——符号检验
函数 signtest
格式 p=signtest(X, Y, alpha) % X、Y为两个总体的样本,长度必须相同,alpha为显
著性水平,P两个样本X和Y的中位数相等的概率,p接近于0则可对原假设质疑。
[p, h]=signtest(X, Y, alpha) % h为检验结果:h=0表示X与Y的中位数之差不显
著,h=1表示X与Y的中位数之差显著。
[p,h,stats] = signtest(X,Y,alpha) % stats中sign为符号统计量的值 例4-79 两个正态随机样本的中位数相等的假设检验
>> X=normrnd(0,1,20,1); >> Y=normrnd(0,2,20,1);
>> [p,h,stats]=signtest(X,Y,0.05) p =
0.2632 h = 0 stats = sign: 7
结果表明:h=0表示X与Y的中位数之差不显著
4.8.7 正态分布的拟合优度测试
函数 jbtest
格式 H = jbtest(X) %对输入向量X进行Jarque-Bera测试,显著性水平为0.05。
H = jbtest(X,alpha) %在水平alpha而非5%下施行 Jarque-Bera 测试,alpha在
0和1之间。
[H,P,JBSTAT,CV] = jbtest(X,alpha) %P为接受假设的概率值,P越接近于0,则
169 MATLAB6.0数学手册 可以拒绝是正态分布的原假设;JBSTAT为测试统计量的值,CV为是否拒绝原假设的临界值。
说明 H为测试结果,若H=0,则可以认为X是服从正态分布的;若X=1,则可以否定X服从正态分布。X为大样本,对于小样本用lillietest函数。
例4-80 调用MATLAB中关于汽车重量的数据,测试该数据是否服从正态分布
>> load carsmall
>> [h,p,j,cv]=jbtest(Weight) h = 1 p =
0.0267 j =
7.2448 cv =
5.9915
说明 p=2.67%表示应该拒绝服从正态分布的假设;h=1也可否定服从正态分布;统计量的值j = 7.2448大于接受假设的临界值cv =5.9915,因而拒绝假设(测试水平为5%)。
4.8.8 正态分布的拟合优度测试
函数 lillietest
格式 H = lillietest(X) %对输入向量X进行Lilliefors测试,显著性水平为0.05。
H = lillietest(X,alpha) %在水平alpha而非5%下施行Lilliefors测试,alpha在
0.01和0.2之间。
[H,P,LSTAT,CV] = lillietest(X,alpha) %P为接受假设的概率值,P越接近于0,
则可以拒绝是正态分布的原假设;LSTAT为测试统计量的值,CV为是否拒绝原假设的临界值。
说明 H为测试结果,若H=0,则可以认为X是服从正态分布的;若X=1,则可以否定X服从正态分布。
例4-81
>> Y=chi2rnd(10,100,1); >> [h,p,l,cv]=lillietest(Y) h = 1 p =
0.0175 l =
0.1062 cv =
0.0886
图4-21
说明 h=1表示拒绝正态分布的假设;p = 0.0175表示服从正态分布的概率很小;统计量的值l = 0.1062大于接受假设的临界值cv =0.0886,因而拒绝假设(测试水平为5%)。
>>hist(Y)
从图中看出,数据Y不服从正态分布。
4.8.9 单个样本分布的 Kolmogorov-Smirnov 测试
函数 kstest
170 第4章 概率统计
格式 H = kstest(X) %测试向量X是否服从标准正态分布,测试水平为5%。
H = kstest(X,cdf) %指定累积分布函数为cdf的测试(cdf=[ ]时表示标准正态分
布),测试水平为5%
H = kstest(X,cdf,alpha) % alpha为指定测试水平
[H,P,KSSTAT,CV] = kstest(X,cdf,alpha) %P为原假设成立的概率,KSSTAT为测
试统计量的值,CV为是否接受假设的临界值。
说明 原假设为X服从标准正态分布。若H=0则不能拒绝原假设,H=1则可以拒绝原假设。
例4-82 产生100个威布尔随机数,测试该随机数服从的分布
>> x=weibrnd(1,2,100,1);
>> [H,p,ksstat,cv]=kstest(x,[x weibcdf(x,1,2)],0.05) %测试是否服从威布尔分布 H = 0 p =
0.3022 ksstat = 0.0959 cv =
0.1340
说明 H=0表示接受原假设,统计量ksstat小于临界值表示接受原假设。 >> [H,p,ksstat,cv]=kstest(x,[x expcdf(x,1)],0.05) %测试是否服从指数分布
H = 1 p =
0.0073 ksstat = 0.1653 cv =
0.1340
说明 H=1表明拒绝服从指数分布的假设。
>> [H,p,ksstat,cv]=kstest(x,[ ],0.05) %测试是否服从标准正态分布 H = 1 p =
3.1285e-026 ksstat = 0.5380 cv =
0.1340
说明 H=1表明不服从标准正态分布。
4.8.10 两个样本具有相同的连续分布的假设检验
函数 kstest2
格式 H = kstest2(X1,X2) %测试向量X1与X2是具有相同的连续分布,测试水
平为5%。
H = kstest2(X1,X2,alpha) % alpha为测试水平
[H,P,KSSTAT] = kstest(X,cdf,alpha) %与指定累积分布cdf相同的连续分布,P
为假设成立的概率,KSSTAT为测试统计量的值。
说明 原假设为具有相同连续分布。测试结果为H,若H=0,表示应接受原假设;若
171 MATLAB6.0数学手册 H=1,表示可以拒绝原假设。这是Kolmogorov-Smirnov测试方法。
例4-83
>> x=-1:1:5;
>> y=randn(20,1); >> [h,p,k]=kstest2(x,y) h = 1 p =
0.0444 k =
0.5643
说明 h=1表示可以认为向量x与y的分布不相同,相同的概率只有4.4%。
4.9 方差分析
4.9.1 单因素方差分析
单因素方差分析是比较两组或多组数据的均值,它返回原假设——均值相等的概率 函数 anova1
格式 p = anova1(X) %X的各列为彼此独立的样本观察值,其元素个数相同,p为各
列均值相等的概率值,若p值接近于0,则原假设受到怀疑,说明至少有一列均值与其余列均值有明显不同。
p = anova1(X,group) %X和group为向量且group要与X对应
p = anova1(X,group,'displayopt') % displayopt=on/off表示显示与隐藏方差分析
表图和盒图
[p,table] = anova1(?) % table为方差分析表
[p,table,stats] = anova1(?) % stats为分析结果的构造 说明 anova1函数产生两个图:标准的方差分析表图和盒图。
方差分析表中有6列:第1列(source)显示:X中数据可变性的来源;第2列(SS)显示:用于每一列的平方和;第3列(df)显示:与每一种可变性来源有关的自由度;第4列(MS)显示:是SS/df的比值;第5列(F)显示:F统计量数值,它是MS的比率;第6列显示:从F累积分布中得到的概率,当F增加时,p值减少。
例4-84 设有3台机器,用来生产规格相同的铝合金薄板。取样测量薄板的厚度,精确至?厘米。得结果如下:
机器1:0.236 0.238 0.248 0.245 0.243 机器2:0.257 0.253 0.255 0.254 0.261 机器3:0.258 0.264 0.259 0.267 0.262
检验各台机器所生产的薄板的厚度有无显著的差异? 解:
>> X=[0.236 0.238 0.248 0.245 0.243; 0.257 0.253 0.255 0.254 0.261;?
0.258 0.264 0.259 0.267 0.262]; >> P=anova1(X')
172 第4章 概率统计
结果为:
P =
1.3431e-005
还有两个图,即图4-22和图4-23。
0.2650.260.255Values0.250.2450.240.235
12Column Number3
图4-22 图4-23
例4-85 建筑横梁强度的研究:3000磅力量作用在一英寸的横梁上来测量横梁的挠度,钢筋横梁的测试强度是:82 86 79 83 84 85 86 87;其余两种更贵的合金横梁强度测试为合金1:74 82 78 75 76 77;合金2:79 79 77 78 82 79]。
检验这些合金强度有无明显差异? 解:
>> strength = [82 86 79 83 84 85 86 87 74 82 78 75 76 77 79 79 77 78 82 79]; >>alloy = {'st','st','st','st','st','st','st','st', 'al1','al1','al1','al1','al1','al1',? 'al2','al2','al2','al2','al2','al2'};
>> [p,table,stats] = anova1(strength,alloy,'on')
结果为
p =
1.5264e-004 table =
'Source' 'SS' 'df' 'MS' 'F' 'Prob>F' 'Groups' [184.8000] [ 2] [92.4000] [15.4000] [1.5264e-004] 'Error' [102.0000] [17] [ 6.0000] [ ] [ ] 'Total' [286.8000] [19] [ ] [ ] [ ] stats =
gnames: {3x1 cell} n: [8 6 6] source: 'anova1' means: [84 77 79] df: 17 s: 2.4495
868482Values80787674
stal1al2
图4-24 图4-25
173