用python計算臨界值(critical value)和p值(p value)(scipy)


z檢驗:

計算臨界值:scipy.stats.norm.ppf(level_of_confidence)

計算p值:scipy.stats.norm.sf(abs(z_score)) 或 1-scipy.stats.norm.cdf(abs(z_score))---左尾或右尾,雙尾檢驗需在此基礎上乘以2

 

計算臨界值例子:

from scipy.stats import norm
critical1=norm.ppf(0.95) #左尾或右尾
critical2=norm.ppf(0.975) #雙尾

 

t檢驗:

計算臨界值:scipy.stats.t.ppf(level_of_confidence, degree_of_freedom)

計算p值:scipy.stats.t.sf(abs(t_score),df) 或 1-scipy.stats.t.cdf(abs(t_score),df)---左尾或右尾,雙尾檢驗需在此基礎上乘以2

 

計算臨界值例子:

from scipy.stats import t
critical1=t.ppf(0.95,10) #左尾或右尾
critical2=t.ppf(0.975,10) #雙尾

 

卡方檢驗:

計算臨界值:scipy.stats.chi2.ppf(level_of_confidence, degree_of_freedom)

計算p值:scipy.stats.chi2.sf(abs(chi2_score),df) 或 1-scipy.stats.chi2.cdf(abs(chi2_score),df)---左尾或右尾,雙尾檢驗需在此基礎上乘以2

 

計算臨界值例子:

from scipy.stats import chi2
critical1=chi2.ppf(0.95,10) #左尾或右尾
critical2=chi2.ppf(0.975,10) #雙尾

 

F檢驗:

計算臨界值:scipy.stats.f.ppf(level_of_confidence, dfn, dfd)

計算p值:scipy.stats.f.sf(abs(chi2_score),dfn,dfd) 或 1-scipy.stats.chi2.cdf(abs(chi2_score),dfn,dfd)---左尾或右尾,雙尾檢驗需在此基礎上乘以2

 

計算臨界值例子:

from scipy.stats import f
critical1=f.ppf(0.95,30,28) #左尾或右尾
critical2=f.ppf(0.975,30,28) #雙尾

 

注:

cdf是概率的累積分布,即小於等於某個值出現的概率總和。

ppf是cdf的逆運算,也就是已知概率總和,求對應的統計量的值。

 

參考:https://machinelearningmastery.com/critical-values-for-statistical-hypothesis-testing/


免責聲明!

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



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