非参数统计与matlab编程第三章符号检验法 1.docx

上传人:b****5 文档编号:8366002 上传时间:2023-01-30 格式:DOCX 页数:12 大小:45.28KB
下载 相关 举报
非参数统计与matlab编程第三章符号检验法 1.docx_第1页
第1页 / 共12页
非参数统计与matlab编程第三章符号检验法 1.docx_第2页
第2页 / 共12页
非参数统计与matlab编程第三章符号检验法 1.docx_第3页
第3页 / 共12页
非参数统计与matlab编程第三章符号检验法 1.docx_第4页
第4页 / 共12页
非参数统计与matlab编程第三章符号检验法 1.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

非参数统计与matlab编程第三章符号检验法 1.docx

《非参数统计与matlab编程第三章符号检验法 1.docx》由会员分享,可在线阅读,更多相关《非参数统计与matlab编程第三章符号检验法 1.docx(12页珍藏版)》请在冰豆网上搜索。

非参数统计与matlab编程第三章符号检验法 1.docx

非参数统计与matlab编程第三章符号检验法1

第三章符号检验法

§3.1符号检验

函数signtest

格式p=signtest(x)原假设为x的中位数为0,显著性水平为0.05的双侧检验。

p=signtest(x,m)原假设为x的中位数为m,显著性水平为0.05的双侧检验。

p=signtest(x,m,alpha)原假设为x的中位数为m,显著性水平为alpha的双侧检验。

[p,h,stats]=signtest(x,m,alpha),当样本小于100时,stats只会显示sign,取x小于假设中位数m的个数与大于假设中位数m的个数的较小值,当样本容量大于或等于100时,stats还将显示'zval',即正态统计量值。

k为大于中位数的个数,当k大于n/2时,±取负号,当k小于n/2时,±号取正号。

[p,h]=signtest(...,'alpha',alpha)

例:

[p,h]=signtest(...,'alpha',0.01)

[p,h,stats]=signtest(...,'method',‘exact’)

用精确的方法

[p,h]=signtest(...,'method',‘approximate’)

用正态近似的方法

[p,h,stats]=signtest(x,y,'alpha',0.01,'method','exact')

[p,h,stats]=signtest(y1,y2,0.01,'method','approximate')

例3.1某市劳动和社会保障部门的资料说明,1998年高级技师的年收入的中位数为21700,该市某个行业有一个由50名高级技师组成的样本,这些高级技师的年收入如下:

23072

24370

20327

24296

22256

19140

25669

22404

26744

26744

23406

20438

24890

24815

24556

18472

21514

22516

25112

23480

26522

24074

18064

22590

25261

21180

26188

21625

24333

23146

18324

3598

26040

20846

20438

19474

19214

23072

26744

23443

24630

26893

26485

18138

20179

26744

23554

25706

21588

17990

建立一个50行和1列的向量x,即上面那个数据。

a=[];%把上表数据粘到a中

b=size(a);

x=reshape(a,b

(1)*b

(2),1);

formatlong

[p,h,stats]=signtest(x,21700)

p=

0.06490864707227

h=

0

stats=

sign:

18

sign值的计算:

length(x(find(x>21700)))

ans=

32

length(x(find(x<21700)))

ans=

18

取两者较小值,18。

P值的计算:

2*(1-binocdf(31,50,0.5))

得:

0.06490864707229

P值也可按:

2*(binocdf(18,50,0.5))

得:

0.06490864707227

P值大于缺失的显著性水平0.05,接受原假设。

注意:

符号检验不能进行单侧检验,那么把双侧检验所得的P值除以2,得新的p值。

对于右侧检验:

P值的计算:

1-binocdf(31,50,0.5)

得:

0.03245432353615

也可用:

binocdf(18,50,0.5)

得:

0.03245432353614

即是双侧检验所得P值的一半。

在0.05的显著性水平下拒绝原假设。

对于左侧检验

P值的计算:

length(x(find(x>25000)))

ans=

13

length(x(find(x<25000)))

ans=

37

P值等于:

binocdf(13,50,0.5)

ans=

4.681114554259028e-004

也可用:

1-binocdf(36,50,0.5)

ans=

4.681114554372368e-004

对于双侧:

[p,h,stats]=signtest(x,25000)

p=

9.362229108518057e-004

h=

1

stats=

sign:

13

P/2得:

4.681114554259028e-004与左侧计算的P值相等。

下面我们分析大样本情况:

23072

24370

20327

24296

22256

19140

25669

22404

26744

26744

23406

20438

24890

24815

24556

18472

21514

22516

25112

23480

26522

24074

18064

22590

25261

21180

26188

21625

24333

23146

18324

3598

26040

20846

20438

19474

19214

23072

26744

23443

24630

26893

26485

18138

20179

26744

23554

25706

21588

17990

23072

24370

20327

24296

22256

19140

25669

22404

26744

26744

23406

20438

24890

24815

24556

18472

21514

22516

25112

23480

XX文库-让每个人平等地提升自我26522

24074

18064

22590

25261

21180

26188

21625

24333

23146

18324

3598

26040

20846

20438

19474

19214

23072

26744

23443

24630

26893

26485

18138

20179

26744

23554

25706

21588

17990

23072

24370

20327

24296

22256

19140

25669

22404

26744

26744

23406

20438

24890

24815

24556

18472

21514

22516

25112

23480

26522

24074

18064

22590

25261

21180

26188

21625

24333

23146

18324

3598

26040

20846

20438

19474

19214

23072

26744

23443

24630

26893

26485

18138

20179

26744

23554

25706

21588

17990

根据以上数据建立1列150行的向量bb

length((find(bb<21700)))

ans=

54

length((find(bb>21700)))

ans=

96

[p,h,stats]=signtest(bb,21700)

p=

8.150399118268979e-004

h=

1

stats=

zval:

3.34763598180368

sign:

54

zval值的计算:

zval=(96-75-0.5)/(150/4)^0.5

(96大于75,减去0.5)

zval=3.34763598180368

p值的计算:

2*(1-normcdf(zval))

ans=

8.150399118269647e-004

对于右侧检验:

P值的计算:

上面双侧检验所得P值除以2,即得右侧检验的P值。

对于:

  length(bb(find(bb>24000)))

ans=

63

length(bb(find(bb<24000)))

ans=

87

[p,h,stats]=signtest(bb,24000)

p=

0.06038908130927

h=

0

stats=

zval:

-1.87794213613377

sign:

63

zval的计算:

zval=(63-75+0.5)/(150/4)^0.5

(63小于75,加上0.5)

zval=

-1.87794213613377

P值的计算:

2*normcdf(zval)

ans=

0.06038908130927

对于左侧检验:

把上面双侧检验所得P值除以2,即得左侧检验的P值。

值得一提的是:

sign(x,y,alpha),是检验x-y是否中位数为0,原假设为x-y的中位数为0,x和y具有相同的长度大小。

sign(x,y,alpha)不是检验x和y具有相同的中位数。

x变量

23072

24370

20327

24296

22256

19140

25669

22404

26744

26744

23406

20438

24890

24815

24556

18472

21514

22516

25112

23480

26522

24074

18064

22590

25261

21180

26188

21625

24333

23146

18324

3598

26040

20846

20438

19474

19214

23072

26744

23443

24630

26893

26485

18138

20179

26744

23554

25706

21588

17990

y变量

19324

3398

21040

20846

20438

19474

19214

23072

26744

23443

24630

26893

26485

18138

20179

26744

23554

25706

21588

17990

24072

23370

21327

24296

24256

19140

25669

22404

26744

24744

23406

20438

24890

24815

24556

19472

21514

22516

25112

23480

26522

24074

18064

22590

25261

21180

28188

21625

29333

25146

[p,h,stats]=signtest(x,y,0.05)

p=

0.77544965468158

h=

0

stats=

sign:

23

length(z(find(z>0)))

ans=

23

length(z(find(z<0)))

ans=

26

sign为23和26较小值,为23。

x-y有一个值为0。

P值的计算:

2*binocdf(23,49,0.5)

得:

0.77544965468158

也可按:

2*(1-binocdf(25,49,0.5))

得:

0.77544965468155,大于0.05,接受原假设。

习题三

1.

6200.00

5100.00

6300.00

4900.00

7100.00

5700.00

4900.00

5200.00

6600.00

7200.00

6500.00

6900.00

5500.00

5800.00

6400.00

7000.00

3900.00

5100.00

7500.00

6300.00

5400.00

6000.00

6700.00

6000.00

4800.00

5800.00

7200.00

6200.00

7100.00

6900.00

6000.00

7300.00

6600.00

6300.00

6800.00

6200.00

5500.00

6300.00

5400.00

4800.00

注:

有一个值等于6500

[p,h,stats]=signtest(x,6500,'alpha',0.05,'method','exact')

p=

.0532********

h=

0

stats=

sign:

13

length(find(x>6500))

ans=

13

length(find(x<6500))

ans=

26

左侧检验的P值为:

p/2

ans=

0.02662595704896

在0.05显著性水平,接受备择假设,中位数低于6500。

区间估计:

中位数me的各层的区间估计

第一层:

置信度

1-0.5^38

ans=

0.99999999999636

或1-binocdf(0,39,0.5)/0.5

ans=

0.99999999999636

第二层:

1-0.5^38-39*0.5^38

ans=

0.99999999985448

或:

1-binocdf(1,39,0.5)/0.5

ans=

0.99999999985448

第十四层:

1-binocdf(13,39,0.5)/0.5

ans=

0.94674808590207

x1=sort(x)

x1(14)

x1(14)

ans=

5800

x2=wrev(x1);

x2(14)

ans=

6500

因此,上限6400

置信度为0.94674808590207,区间估计为:

[5800,6500]

2.双侧检验:

精确算法:

2*binocdf(30,70,0.5)

ans=

0.28197892179366

2*(1-binocdf(39,70,0.5))

ans=

0.28197892179364

正态近似:

2*normcdf((35-40+0.5)/sqrt(70/4))

ans=

0.28205887576156

接受原假设,新建住宅的房价中位数是每平方米6500元。

3.①

精确算法:

binocdf(527,2079,0.5)

ans=

6.355204377699287e-117

1-binocdf(1551,527+1552,0.5)

ans=

0

n很大时,binocdf不方便算

近似算法:

normcdf((2079/2-1552+0.5)/sqrt(2079/4))

ans=

5.334462242411411e-112

因此,相信孩子过上更好的日子的成年人较多。

②点估计:

p=1552/(1552+527)

p=

0.74651274651275

95%的置信区间:

[p-1.96*sqrt(p*(1-p)/(1552+527))p+1.96*sqrt(p*(1-p)/(1552+527))]

ans=

0.727813439873090.76521205315240

4.

p=normcdf((157860*0.094-18154+0.5)/sqrt(157860*0.094*0.906))

p=

4.8162e-180

因此,拒绝原假设。

90.6%的分位数超过65岁。

引深思考:

157860*0.094

ans=

1.4839e+004

若原题中的18154改为15000,则:

p=normcdf((157860*0.094-15000+0.5)/sqrt(157860*0.094*0.906))

p=

0.0829

则在0.1显著性水平下,接受原假设。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1