700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 概率统计Python计算:单个正态总体均值双侧假设的T检验

概率统计Python计算:单个正态总体均值双侧假设的T检验

时间:2023-05-09 19:27:22

相关推荐

概率统计Python计算:单个正态总体均值双侧假设的T检验

正态总体的方差 σ 2 \sigma^2 σ2未知的情况下,对总体均值 μ = μ 0 \mu=\mu_0 μ=μ0​进行显著水平 α \alpha α下的双侧假设检验,检验统计量 X ‾ − μ 0 S / n \frac{\overline{X}-\mu_0}{S/\sqrt{n}} S/n ​X−μ0​​~ t ( n − 1 ) t(n-1) t(n−1)。其中 X ‾ \overline{X} X和 S S S分别为样本均值和样本标准差。用p值法的计算函数定义如下。

from scipy.stats import t#导入tdef ttest2(T, df, alpha):#双侧T检验函数p=2*t.sf(abs(T), df)return p>=alpha

ttest2的参数与ttestL、ttestR(详见博文《单个正态总体均值单侧假设的T检验》)的同名参数意义相同,此不赘述。用p值法计算假设的双侧检验,需要考虑检验统计量T位于其分布均值的左、右方来确定p值的计算。但对t分布而言,其密度函数关于纵轴对称,所以当 T < 0 T<0 T<0时残存函数在 ∣ T ∣ |T| ∣T∣处的函数值 S ( ∣ T ∣ ) S(|T|) S(∣T∣)与累积分布函数在 T T T处的函数值 F ( T ) F(T) F(T)是相等的。所以,ttest2函数中的p值赋予2*t.sf(abs(T), df)(第3行)。返回值p>=alpha为True表示接受假设 H 0 H_0 H0​,否则拒绝 H 0 H_0 H0​。

例1某批矿砂的5个样品中的镍含量,经测定为(%)

3.25 , 3.27 , 3.24 , 3.26 , 3.24 3.25, 3.27, 3.24, 3.26, 3.24 3.25,3.27,3.24,3.26,3.24

设测定值总体服从正态分布,参数均未知。问在 α = 0.01 \alpha=0.01 α=0.01下能否接受假设:这批矿砂的镍含量的均值为3.25%。

解:按题意,需检验双侧假设

H 0 : μ = 3.25 , H 1 : μ ≠ 3.25. H_0: \mu=3.25, H_1: \mu\not=3.25. H0​:μ=3.25,H1​:μ=3.25.

下列代码完成本例计算。

import numpy as np#导入numpyx=np.array([3.25, 3.27, 3.24, 3.26, 3.24]) #样本数据xmean=x.mean()#样本均值s=x.std(ddof=1) #样本均方差n=x.size#样本容量mu0=3.25#总体均值假设值alpha=0.01 #显著水平T=(xmean-mu0)/(s/sqrt(n))#检验统计量值accept=ttest2(T, n-1, alpha) #检验假设print('mu=%.2f is %s.'%(mu0, accept))

第2~7行按题面设置各项数据,第8行计算检验统计量值 x ‾ − μ 0 S / n \frac{\overline{x}-\mu_0}{S/\sqrt{n}} S/n ​x−μ0​​为T,第9行调用函数ttest2计算假设 H 0 H_0 H0​的双侧检验。运行程序,输出

mu=3.25 is True.

表示接受假设 H 0 : μ = 3.25 H_0: \mu=3.25 H0​:μ=3.25,即矿砂的含镍量均值为3.25%。

例2《美国公共健康》杂志(1994年3月)描述涉及3个个体的一项大规模研究,文章说从脂肪中摄取热量的平均百分比是38.4%(范围是6%到71.6%)。在某大学医院进行一项研究判定在该医院中病人的平均摄取量是否不同于38.4%,抽取了15个病人测得平均摄取为40.5%,样本标准差为7.5%。设样本来自正态总体 N ( μ , σ 2 ) N(\mu,\sigma^2) N(μ,σ2), μ \mu μ和 σ 2 \sigma^2 σ2均未知。试取显著水平 α = 0.05 \alpha=0.05 α=0.05,检验假设

H 0 : μ = 38.4 % , H 1 : μ ≠ 38.4 % . H_0:\mu=38.4\%, H_1: \mu\not=38.4\%. H0​:μ=38.4%,H1​:μ=38.4%.

解:下列代码完成本例计算。

xmean=40.5#样本均值s=7.5#样本标准差n=15#样本容量mu0=38.4#总体均值假设alpha=0.05#显著水平T=(xmean-mu0)/(s/np.sqrt(n))#检验统计量值accept=ttest2(T, n-1, alpha)#检验假设print('mu=%.1f is %s.'%(mu0, accept))

运行程序,输出

mu=38.4 is True.

表示接受假设 H 0 : μ = 38.4 % H_0:\mu=38.4\% H0​:μ=38.4%。

写博不易,敬请支持:

如果阅读本文于您有所获,敬请点赞、评论、收藏,谢谢大家的支持!

返回《导引》

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。