MATLAB進行假設檢驗


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。

 

轉載------孤獨的貓


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM