4.8.1  已知,单个正态总体的均值μ的假设检验(U检验法)

函数  ztest

格式  h = ztest(x,m,sigma)   % x为正态总体的样本,m为均值μ0,sigma为标准差,显著性水平为0.05(默认值)

h = ztest(x,m,sigma,alpha)   %显著性水平为alpha

[h,sig,ci,zval] = ztest(x,m,sigma,alpha,tail)   %sig为观察值的概率,当sig为小概率时则对原假设提出质疑,ci为真正均值μ的1-alpha置信区间,zval为统计量的值。

说明  若h=0,表示在显著性水平alpha下,不能拒绝原假设;

若h=1,表示在显著性水平alpha下,可以拒绝原假设。

原假设:,

若tail=0,表示备择假设:(默认,双边检验);

tail=1,表示备择假设:(单边检验);

tail=-1,表示备择假设:(单边检验)。

例4-74  某车间用一台包装机包装葡萄糖,包得的袋装糖重是一个随机变量,它服从正态分布。当机器正常时,其均值为0.5公斤,标准差为0.015。某日开工后检验包装机是否正常,随机地抽取所包装的糖9袋,称得净重为(公斤)

0.497,  0.506,  0.518,  0.524,  0.498,  0.511,  0.52,  0.515,  0.512

问机器是否正常?

解:总体μ和σ已知,该问题是当为已知时,在水平下,根据样本值判断μ=0.5还是。为此提出假设:

原假设:

备择假设:

>> X=[0.497,0.506,0.518,0.524,0.498,0.511,0.52,0.515,0.512];

>> [h,sig,ci,zval]=ztest(X,0.5,0.015,0.05,0)

结果显示为

h =

1

sig =

0.0248       %样本观察值的概率

ci =

0.5014    0.5210        %置信区间,均值0.5在此区间之外

zval =

2.2444       %统计量的值

结果表明:h=1,说明在水平下,可拒绝原假设,即认为包装机工作不正常。

4.8.2  未知,单个正态总体的均值μ的假设检验( t检验法)

函数  ttest

格式  h = ttest(x,m)   % x为正态总体的样本,m为均值μ0,显著性水平为0.05

h = ttest(x,m,alpha)   %alpha为给定显著性水平

[h,sig,ci] = ttest(x,m,alpha,tail)   %sig为观察值的概率,当sig为小概率时则对原假设提出质疑,ci为真正均值μ的1-alpha置信区间。

说明  若h=0,表示在显著性水平alpha下,不能拒绝原假设;

若h=1,表示在显著性水平alpha下,可以拒绝原假设。

原假设:,

若    tail=0,表示备择假设:(默认,双边检验);

tail=1,表示备择假设:(单边检验);

tail=-1,表示备择假设:(单边检验)。

例4-75  某种电子元件的寿命X(以小时计)服从正态分布,、σ2均未知。现测得16只元件的寿命如下

159   280   101   212   224   379   179   264   222   362   168   250

149   260   485   170

问是否有理由认为元件的平均寿命大于225(小时)?

解:未知,在水平下检验假设::,:

>> X=[159 280 101 212 224 379 179 264 222 362 168 250 149 260 485 170];

>> [h,sig,ci]=ttest(X,225,0.05,1)

结果显示为:

h =

0

sig =

0.2570

ci =

198.2321       Inf       %均值225在该置信区间内

结果表明:H=0表示在水平下应该接受原假设,即认为元件的平均寿命不大于225小时。

4.8.3  两个正态总体均值差的检验(t检验)

两个正态总体方差未知但等方差时,比较两正态总体样本均值的假设检验

函数  ttest2

格式  [h,sig,ci]=ttest2(X,Y)    %X,Y为两个正态总体的样本,显著性水平为0.05

[h,sig,ci]=ttest2(X,Y,alpha)   %alpha为显著性水平

[h,sig,ci]=ttest2(X,Y,alpha,tail)   %sig为当原假设为真时得到观察值的概率,当sig为小概率时则对原假设提出质疑,ci为真正均值μ的1-alpha置信区间。

说明  若h=0,表示在显著性水平alpha下,不能拒绝原假设;

若h=1,表示在显著性水平alpha下,可以拒绝原假设。

原假设:,  (为X为期望值,为Y的期望值)

若    tail=0,表示备择假设:(默认,双边检验);

tail=1,表示备择假设:(单边检验);

tail=-1,表示备择假设:(单边检验)。

例4-76  在平炉上进行一项试验以确定改变操作方法的建议是否会增加钢的产率,试验是在同一只平炉上进行的。每炼一炉钢时除操作方法外,其他条件都尽可能做到相同。先用标准方法炼一炉,然后用建议的新方法炼一炉,以后交替进行,各炼10炉,其产率分别为

(1)标准方法:78.1  72.4  76.2  74.3  77.4  78.4  76.0  75.5  76.7  77.3

(2)新方法:  79.1  81.0  77.3  79.1  80.0  79.1  79.1  77.3  80.2  82.1

设这两个样本相互独立,且分别来自正态总体和,、、均未知。问建议的新操作方法能否提高产率?(取α=0.05)

解:两个总体方差不变时,在水平下检验假设::,:

>> X=[78.1  72.4  76.2  74.3  77.4  78.4  76.0  75.5  76.7  77.3];

>>Y=[79.1  81.0  77.3  79.1  80.0  79.1  79.1  77.3  80.2  82.1];

>> [h,sig,ci]=ttest2(X,Y,0.05,-1)

结果显示为:

h =

1

sig =

2.1759e-004     %说明两个总体均值相等的概率很小

ci =

-Inf   -1.9083

结果表明:H=1表示在水平下,应该拒绝原假设,即认为建议的新操作方法提高了产率,因此,比原方法好。

4.8.4  两个总体一致性的检验——秩和检验

函数  ranksum

格式  p = ranksum(x,y,alpha)   %x、y为两个总体的样本,可以不等长,alpha为显著性水平

[p,h] = ranksum(x,y,alpha)   % h为检验结果,h=0表示X与Y的总体差别不显著h=1表示X与Y的总体差别显著

[p,h,stats] = ranksum(x,y,alpha)  %stats中包括:ranksum为秩和统计量的值以及zval为过去计算p的正态统计量的值

说明  P为两个总体样本X和Y为一致的显著性概率,若P接近于0,则不一致较明显。

例4-77  某商店为了确定向公司A或公司B购买某种商品,将A和B公司以往的各次进货的次品率进行比较,数据如下所示,设两样本独立。问两公司的商品的质量有无显著差异。设两公司的商品的次品的密度最多只差一个平移,取α=0.05。

A:7.0  3.5  9.6  8.1  6.2  5.1  10.4  4.0  2.0  10.5

B:5.7  3.2  4.1  11.0  9.7  6.9  3.6  4.8  5.6  8.4  10.1  5.5  12.3

解:设、分别为A、B两个公司的商品次品率总体的均值。则该问题为在水平α=0.05下检验假设::,:

>> A=[7.0 3.5 9.6 8.1 6.2 5.1 10.4 4.0 2.0 10.5];

>> B=[5.7 3.2 4.1 11.0 9.7 6.9 3.6 4.8 5.6 8.4 10.1 5.5 12.3];

>> [p,h,stats]=ranksum(A,B,0.05)

结果为:

p =

0.8041

h =

0

stats =

zval: -0.2481

ranksum: 116

结果表明:一方面,两样本总体均值相等的概率为0.8041,不接近于0;另一方面,H=0也说明可以接受原假设,即认为两个公司的商品的质量无明显差异。

4.8.5  两个总体中位数相等的假设检验——符号秩检验

函数  signrank

格式  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,则可以拒绝是正态分布的原假设;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

说明  h=1表示拒绝正态分布的假设;p = 0.0175表示服从正态分布的概率很小;统计量的值l = 0.1062大于接受假设的临界值cv =0.0886,因而拒绝假设(测试水平为5%)。

>>hist(Y)

从图中看出,数据Y不服从正态分布。

4.8.9  单个样本分布的 Kolmogorov-Smirnov 测试

函数  kstest

格式  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,表示应接受原假设;若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')

结果为:

P =

1.3431e-005

还有两个图,即图4-22和图4-23。

  

图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

 

图4-24                                                       图4-25

说明  p值显示,3种合金是明显不同的,盒图显示钢横梁的挠度大于另两种合金横梁的挠度。

4.9.2  双因素方差分析

函数  anova2

格式  p = anova2(X,reps)

p = anova2(X,reps,'displayopt')

[p,table] = anova2(…)

[p,table,stats] = anova2(…)

说明  执行平衡的双因素试验的方差分析来比较X中两个或多个列(行)的均值,不同列的数据表示因素A的差异,不同行的数据表示另一因素B的差异。如果行列对有多于一个的观察点,则变量reps指出每一单元观察点的数目,每一单元包含reps行,如:

reps=2

其余参数与单因素方差分析参数相似。

例4-86  一火箭使用了4种燃料,3种推进器作射程试验,每种燃料与每种推进器的组合各发射火箭2次,得到结果如下:

推进器(B)             B1          B2           B3

A1       58.2000       56.2000       65.3000

52.6000       41.2000       60.8000

A2       49.1000       54.1000       51.6000

燃料A              42.8000       50.5000       48.4000

A3       60.1000       70.9000       39.2000

58.3000       73.2000       40.7000

A4       75.8000       58.2000       48.7000

71.5000       51.0000       41.4000

考察推进器和燃料这两个因素对射程是否有显著的影响?

解:建立M文件

X=[58.2000       56.2000       65.3000

52.6000       41.2000       60.8000

49.1000       54.1000       51.6000

42.8000       50.5000       48.4000

60.1000       70.9000       39.2000

58.3000       73.2000       40.7000

75.8000       58.2000       48.7000

71.5000       51.0000       41.4000];

P=anova2(X,2)

结果为:

P =

0.0035    0.0260    0.0001

显示方差分析图为图4-26。

转载------孤独的猫

MATLAB进行假设检验的更多相关文章

  1. matlab 假设检验

    转自:http://blog.csdn.net/colddie/article/details/7773278 函数名称 函数说明 调用格式 正态总体的参数检验 ztest 单样本均值的z检验 (总体 ...

  2. MATLAB 成对T检验(paired-ttest)

    学过的统计知识忘光了,飞速恶补了一下能用到的,此篇多有错误今后看到再改= =||| 成对t检验(Paired ttest) 将两组测量值对应相减,再将所得差值看作服从正态分布的随机变量,然后再做关于差 ...

  3. MATLAB统计工具箱 转

    D:\Program Files\MATLAB\R2012b\toolbox\stats\stats MATLAB统计工具箱包括概率分布.方差分析.假设检验.分布检验.非参数检验.回归分析.判别分析. ...

  4. 用MATLAB做T检验(ttest)

    t-检验: t-检验,又称student‘s t-test,可以用于比较两组数据是否来自同一分布(可以用于比较两组数据的区分度),假设了数据的正态性,并反应两组数据的方差在统计上是否有显著差异. ma ...

  5. Matlab与数学建模

    一.学习目标. (1)了解Matlab与数学建模竞赛的关系. (2)掌握Matlab数学建模的第一个小实例—评估股票价值与风险. (3)掌握Matlab数学建模的回归算法. 二.实例演练. 1.谈谈你 ...

  6. [matlab工具箱] 神经网络Neural Net

    //目的是学习在BP神经网络的基础上添加遗传算法,蚁群算法等优化算法来优化网络,这是后话. 先简单了解了MATLAB中的神经网络工具箱,工具箱功能还是非常强大的,已经可以拟合出非常多的曲线来分析了. ...

  7. 数据质量、特征分析及一些MATLAB函数

    MATLAB数据分析工具箱 MATLAB工具箱主要含有的类别有: 数学类.统计与优化类.信号处理与通信类.控制系统设计与分析类.图像处理类.测试与测量类.计算金融类.计算生物类.并行计算类.数据库访问 ...

  8. Mathematica 和 MATLAB、Maple 并称为三大数学软件

    Mathematica是一款科学计算软件,很好地结合了数值和符号计算引擎.图形系统.编程语言.文本系统.和与其他应用程序的高级连接.很多功能在相应领域内处于世界领先地位,它也是使用最广泛的数学软件之一 ...

  9. Matlab 绘制三维立体图(以地质异常体为例)

    前言:在地球物理勘探,流体空间分布等多种场景中,定位空间点P(x,y,x)的物理属性值Q,并绘制三维空间分布图,对我们洞察空间场景有十分重要的意义. 1. 三维立体图的基本要件: 全空间网格化 网格节 ...

随机推荐

  1. eclipse显示adb is down错误,无法真机调试

    cmd进入adb目录下,运行adb kill-server 和 adb start-server还是不能正常调试时, 在360的网络连接列表中找到占用端口5037的adb.exe,全部关闭,重启ecl ...

  2. LeetCode:有效的括号【20】

    LeetCode:有效的括号[20] 题目描述 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合. ...

  3. Java基础教程:对象比较排序

    Java基础教程:对象比较排序 转载请标明出处:http://blog.csdn.net/wangtaocsdn/article/details/71500500 有时候需要对对象列表或数组进行排序, ...

  4. 前后端分离 vue的nginx配置

    nginx配置vue 有全静态化  与 vue自己的应用端口 两种方式 以下是nginx跳转到vue自己的端口 https://www.jianshu.com/p/b7bd0d352db7 以下是全静 ...

  5. 1 准备学习redis

    首先,当然是搜索相关资料了 1 Redis 设计与实现 http://redisbook.com/ 2 Redis快速入门 http://www.yiibai.com/redis/redis_quic ...

  6. ss命令能识别的TCP状态的关键字

    [TCP_ESTABLISHED] = "ESTAB",         [TCP_SYN_SENT] = "SYN-SENT",         [TCP_S ...

  7. 一步完成MySQL向Redis迁移

    在把一个大表从 MySQL 迁移到 Redis 时,你可能会发现,每次提取.转换.导入一条数据是让人难以忍受的慢!这里有一个技巧,你可以通过使用管道把 MySQL 的输出直接输入到 redis-cli ...

  8. 在你的网站中使用 AdSense广告

    下面介绍了如何使用Google的AdSense来为你的网站设置广告.基本内容包括: 创建一个AdSense账号,你必须18岁以上,有一个Google账号以及地址 你的网站必须已经被激活,并且你的网站内 ...

  9. swift的arc 是不是有问题?

    class Arctest { let name: String = "Arctest" @lazy var ret:() -> String? = { [weak self ...

  10. C++中的宏和const

    在C语言中使用const来定义一个变量,可以通过变量类型的指针形式来进行修改,而C++中增强了这种表现形式,使得即使通过类型变量指针也不能对变量进行修改. 在C++中const和宏是有区别的. con ...