《非参数统计》与MATLAB编程 第四章 符号秩和检验法
第四章符号和检验法
函数 signrank
格式 p = signrank(x) 原假设为x的中位数为0,显著性水平为0.05的双侧检验。
p = signrank(x,m) 原假设为x的中位数为m,显著性水平为0.05的双侧检验。
p = signrank(x,m,alpha) 原假设为x的中位数为m,显著性水平为alpha的双侧检验。
[p,h] = signrank(...,'alpha', alpha)
例:[p,h] = signrank(...,'alpha', 0.01)
[p,h,stats] = signrank(...,'method', ‘exact’)
用精确的方法
[p,h] = signrank(...,'method', ‘approximate’)
用正态近似的方法
[p,h,stats]=signrank(x,y,'alpha',0.01,'method','exact') [p,h,stats]=signrank(y1,y2,0.01,'method','approximate') 所P值除以2,得到相应单侧检验的P值。
§4.2
x=[20.3 23.5 22 19.1 21 24.7 16.1 18.5 21.9 24.2 23.4 25]; y=[18 21.7 22.5 17 21.2 24.8 17.2 14.9 20 21.1 22.7 23.7];
[p,h,stats]=signtest(x,y)
p =
0.3877
h =
stats =
sign: 4
length(find((x-y)>0))
ans =
8
2*(1-binocdf(7,12,0.5))
ans =
0.3877
p =0.3877与书上算的不一样,书上算错了。符号检验接受原假设。
符号秩和检验:
[p,h,stats]=signrank(x,y) p =
0.02685546875000
h =
1
stats =
signedrank: 11
P43,表4.5中:
3+2+1+5=11,12*13/2-11 ans =
67
a =
1
1
1
2
2
3
4
5
6
8
10
12
p=2*sum(a)/2^12
p =
0.02685546875000
在显著性水平0.05下,拒绝原假设。
符号秩和检验应用的条件:假设总体服从对称分布,而符号检验不需要。
习题四
1.
x1=[22.32 25.76 24.23 21.35 23.43 26.97 18.36 20.75 24.07 26.43 25.41 27.22];
x2=[21.25 23.97 24.77 19.26 23.12 26.00 19.40 17.18 22.23 23.35 24.98 25.90]
符号秩和
[p,h,stats]=signrank(x1,x2)
p =
0.01220703125000
h =
1
stats =
signedrank: 8
在0.05显著性下,拒绝原假设,有差异。
2.
符号检验法:
[p,h,stats]=signtest(x1,x2)
p =
0.03857421875000
h =
1
stats =
sign: 2
[h,p,ci,tstat]=ttest(x1,x2)
h =
1
p=
0.00888227075133
ci =
0.37992410311173 2.10174256355494
tstat =
tstat: 3.17229233575613
df: 11
sd: 1.35497372220969
3.
x1=[390 390 450 380 400 390 350 400 370 430] x2=[270 280 350 300 300 340 290 320 280 320] x3=x2+100
[p h stats]=signrank(x1,x3)
p =
0.26562500000000
h =
stats =
signedrank: 9
或者:
[p,h,stats]=signrank(x1-x2,100)
p =
0.26562500000000
h =
stats =
signedrank: 9
接受原假设,差价是100
L-H估计:
a=x1-x2
a =
120 110 100 80 100 50 60 80 90 110
b=sort([mean(nchoosek(a,2),2);a']);
中位数:median(b)
ans =
90
见《非参数统计》吴喜之,第40页,查表, 对于n=10,k=9
[b(9+1) b(10*11/2-9)]
ans =
75 105
置信度95.2%的区间为[75,105]
大样本连续性修正公式如下所示:
n=10
k=round(n*(n+1)/4-1.96*sqrt(n*(n+1)*(2*n+1)/24)-0.5) k =
8
[b(k+1) b(10*11/2-k)]
ans =
75 105
置信度95%的置信区间为[75,105]
基于符号检验的点估计与区间估计:
点估计:median(x1-x2)
ans =
95
中位数me的各层的区间估计
第一层:置信度
1-0.5^9
ans =
0.99804687500000
或1-binocdf(0,10,0.5)/0.5
ans =
0.99804687500000
第二层:
1-0.5^9-12*0.5^9
ans =
0.97460937500000
1-binocdf(1,12,0.5)/0.5
ans =
0.99365234375000
第三层:
1-binocdf(2,12,0.5)/0.5
ans =
0.96142578125000
第四层:
1-binocdf(3,12,0.5)/0.5
ans =
0.85400390625000
sort(x1-x2)
ans =
50 60 80 80 90 100 100 110 110
120
因此,置信度为0.96142578的置信区间为(80,110)