常用的假設檢驗方法(U檢驗、T檢驗、卡方檢驗、F檢驗)


一、假設檢驗

假設檢驗是根據一定的假設條件,由樣本推斷總體的一種方法。

假設檢驗的基本思想是小概率反證法思想,小概率思想認為小概率事件在一次試驗中基本上不可能發生,在這個方法下,我們首先對總體作出一個假設,這個假設大概率會成立,如果在一次試驗中,試驗結果和原假設相背離,也就是小概率事件竟然發生了,那我們就有理由懷疑原假設的真實性,從而拒絕這一假設。

二、假設檢驗的四種方法

1、有關平均值參數u的假設檢驗

根據是否已知方差,分為兩類檢驗:U檢驗和T檢驗。
如果已知方差,則使用U檢驗,如果方差未知則采取T檢驗。

2、有關參數方差σ2的假設檢驗

F檢驗是對兩個正態分布的方差齊性檢驗,簡單來說,就是檢驗兩個分布的方差是否相等

3、檢驗兩個或多個變量之間是否關聯

卡方檢驗屬於非參數檢驗,主要是比較兩個及兩個以上樣本率(構成比)以及兩個分類變量的關聯性分析。根本思想在於比較理論頻數和實際頻數的吻合程度或者擬合優度問題。

三、U檢驗(Z檢驗)

U檢驗又稱Z檢驗。

Z檢驗是一般用於大樣本(即樣本容量大於30)平均值差異性檢驗的方法(總體的方差已知)。它是用標准正態分布的理論來推斷差異發生的概率,從而比較兩個平均數的差異是否顯著。

Z檢驗步驟:

第一步:建立虛無假設 H0:μ1 = μ2 ,即先假定兩個平均數之間沒有顯著差異,

第二步:計算統計量Z值,對於不同類型的問題選用不同的統計量計算方法,

1、如果檢驗一個樣本平均數(X)與一個已知的總體平均數(μ0)的差異是否顯著。其Z值計算公式為:

其中:

X是檢驗樣本的均值;

μ0是已知總體的平均數;

S是總體的標准差;

n是樣本容量。

2、如果檢驗來自兩個的兩組樣本平均數的差異性,從而判斷它們各自代表的總體的差異是否顯著。其Z值計算公式為:

第三步:比較計算所得Z值與理論Z值,推斷發生的概率,依據Z值與差異顯著性關系表作出判斷。如下表所示:

第四步:根據是以上分析,結合具體情況,作出結論。

例子:一種原件,要求使用壽命不低於1000小時,現從一批這種原件中抽取25件,測得其使用壽命的平均值為950小時,已知該原件服從標准差S=100小時的正太分布,試在顯著性水平α=0.05下確定這批原件是否合格

解:使用壽命小於1000小時即為不合格,此題為左單側檢驗

      拒絕域為:Z<-μα  ;  查表得  μ0.05=1.65

已知s2=100*2,X=950,n=25  假設H0:μ=1000;H1<1000

選取統計量 Z=(X - μ)(S/√n)= (950-1000)/(100/√25)=-2.5

因為 Z=-2.5<<-μα  =-1.65 ,所以拒絕H0,即認為這批原件不合格

四、T檢驗

亦稱student t檢驗(Student's t test),主要用於樣本含量較小(例如n<30),總體標准差σ未知的正態分布。目的是用來比較樣本均數所代表的未知總體均數μ和已知總體均數μ0。

T統計量計算公式:

自由度:v=n - 1

T檢驗的步驟

第一步:建立虛無假設H0:μ1 = μ2,即先假定兩個總體平均數之間沒有顯著差異;

第二步:計算統計量T值,對於不同類型的問題選用不同的統計量計算方法

1、如果要評斷一個總體中的小樣本平均數與總體平均值之間的差異程度,其統計量T值的計算公式為:

2、如果要評斷兩組樣本平均數之間的差異程度,其統計量T值的計算公式為:

第三步:根據自由度df=n-1,查T值表,找出規定的T理論值並進行比較。理論值差異的顯著水平為0.01級或0.05級。不同自由度的顯著水平理論值記為T(df)0.01和T(df)0.05

第四步:比較計算得到的t值和理論T值,推斷發生的概率,依據下表給出的T值與差異顯著性關系表作出判斷。

第五步:根據是以上分析,結合具體情況,作出結論。

實際應用中,T檢驗可分為三種:單樣本T檢驗、配對樣本T檢驗和雙獨立樣本T檢驗

單樣本T檢驗

例子:已知某班的一次數學測驗成績復查正態分布,現從全班中抽取16人,測得這些人成績是[50,44,91,90,74,72,89,81,65,62,68,74,63,61,33,47],問在α=0.05下,是否可以認為全體考生的平均分是70分?

from scipy import stats
import numpy as np
 
rvs = [50,44,91,90,74,72,89,81,65,62,68,74,63,61,33,47]
mean = np.mean(rvs)#均值
std = np.std(rvs)#標准差
print("均值:",mean,"  標准差:",std)
 
t_val, p = stats.ttest_1samp(rvs, 70)
print("t_val:",t_val,"   p值:", p)

 

結論,因為p值=0.42>0.05,所以可以認為全體考生的平均分是70分

配對樣本T檢驗

配對t檢驗是采用配對設計方法觀察以下幾種情形:

1.配對的兩個受試對象分別接受兩種不同的處理;

2.同一受試對象接受兩種不同的處理;

3.同一受試對象處理前后的結果進行比較(即自身配對);

4.同一對象的兩個部位給予不同的處理。

例子:在針織品漂白工藝過程中, 要考慮溫度對針織品斷裂強力(主要質量指標)的影響。為了比較70℃與80℃的影響有無差別,在這兩個溫度下,分別重復做了8次試驗,強力數據如下。問在70℃時的平均斷裂強力與80℃時的平均斷裂強力間是否有顯著差別? 假定斷裂強力服從正態分布(α=0.05)

70℃時的強力:20.5, 18.8, 19.8, 20.9, 21.5, 19.5, 21.0, 21.2

80℃時的強力:17.7, 20.3, 20.0, 18.8, 19.0, 20.1, 20.0, 19.1

from  scipy.stats import ttest_rel
import pandas as pd
 
x = [20.5, 18.8, 19.8, 20.9, 21.5, 19.5, 21.0, 21.2]
y = [17.7, 20.3, 20.0, 18.8, 19.0, 20.1, 20.0, 19.1]
# 配對樣本t檢驗
t_val, p = ttest_rel(x, y)
print('t_val:',t_val,"   p值:", p)

 

結論: 因為p值=0.1149>0.05, 故接受原假設, 認為在70℃時的平均斷裂強力與80℃時的平均斷裂強力間無顯著差別

雙獨立樣本T檢驗

例子:甲乙兩台機床加工螺絲帽,螺絲帽的半徑都服從正態分布,為驗證兩台機床加工的螺絲帽半徑是否相等,分別取兩台機床加工的8、7枚螺絲帽進行測量,分別測得[20.5,19.8,19.7,20.4,20.1,20.0,19.0,19.9]\[20.7,19.8,19.5,20.8,20.4,19.6,20.2] 問兩台機器生產的螺絲帽半徑是否有差異(α=0.05)

from scipy.stats import norm,ttest_ind #引入正態分布(norm),T檢驗(ttest_ind)
 
n1_samples = [20.5,19.8,19.7,20.4,20.1,20.0,19.0,19.9]
n2_samples = [20.7,19.8,19.5,20.8,20.4,19.6,20.2]
 
#獨立雙樣本 t 檢驗的目的在於判斷兩組樣本之間是否有顯著差異:
t_val, p = ttest_ind(n1_samples, n2_samples)
print('t_val:',t_val,"   p值:", p) #p值小於0.05時,認為差異顯著;大於等於0.05時表示差異不顯著

 

結論:p值=0.408>0.05,接受原假設,甲乙機床制造的螺絲帽半徑沒有顯著性差異

五、卡方檢驗

卡方檢驗又稱X2檢驗,就是檢驗兩個變量之間有沒有關系。

屬於非參數檢驗,主要是比較兩個及兩個以上樣本率(構成比)以及兩個分類變量的關聯性分析。根本思想在於比較理論頻數和實際頻數的吻合程度或者擬合優度問題。

X2計算公式為:

例子1:有AB兩種葯可以治療某種疾病,問兩種葯物的療效是否相同?

葯類

有效

無效

合計

有效率

A葯

67

26

93

72.04%

B葯

44

30

74

59.46%

合計

111

56

167

66.47%

解:建立假設H0,兩種葯物療效相同,計算得其理論值為:

葯類

有效

無效

合計

A葯

61.8 31.2

93

B葯

49.2 24.8

74

合計

111

56

167

X2=(67-61.8)2/61.8+(26-31.2)2/31.2+(44-49.2)2/49.2+(30-24.8)2/24.8=2.94

查表得P>0.1,按0.05標准,不拒絕H0,即可以認為兩種葯物的療效相同

例子2:探究死亡年齡和居住地、性別是否有關?

#old     | ruralMale| ruralFemale | urbanMale | urbanFemale
#50-54 | 11.7        | 8.7               | 15.4           | 8.4
#55-59 | 18.1        |11.7              | 24.3           | 13.6
#60-64 | 26.9        | 20.3             | 37              | 19.3
#65-69 | 41           | 30.9             | 54.6           | 35.1
#70-74 | 66           | 54.3             | 71.1           | 50

from  scipy.stats import chi2_contingency
import numpy as np
kf_data = np.array([[11.7,8.7,15.4,8.4], 
                    [18.1,11.7,24.3,13.6],
                    [26.9,20.3,37,19.3],
                    [41,30.9,54.6,35.1],
                    [66,54.3,71.1,50]])
kf = chi2_contingency(kf_data)
print('chisq-statistic=%.4f, p-value=%.4f, df=%i \n expected_frep: \n%s'%kf)

 

結論: 因為p值=0.9961>0.05, 故接受原假設, 認為死亡年齡和居住地、性別無顯著差別。

六、F檢驗

F檢驗法是檢驗兩個正態隨機變量的總體方差是否相等的一種假設檢驗方法。

F統計量計算公式:

例子:存在兩組數據,需要驗證這兩組數據的方差齊性。
x = [20.5, 18.8, 19.8, 20.9, 21.5, 19.5, 21.0, 21.2]
y = [17.7, 20.3, 20.0, 18.8, 19.0, 20.1, 20.0, 19.1]

from scipy.stats import levene
 
x = [20.5, 18.8, 19.8, 20.9, 21.5, 19.5, 21.0, 21.2]
y = [17.7, 20.3, 20.0, 18.8, 19.0, 20.1, 20.0, 19.1]
f_val, p = levene(x, y)
print(f_val, p)

 

結論,p值=0.93大於0.05,認為兩個總體不具有方差齊性

轉:https://blog.csdn.net/qq_22592457/article/details/92982170


免責聲明!

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



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