失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 概率统计Python计算:双正态总体均值差的双侧区间估计

概率统计Python计算:双正态总体均值差的双侧区间估计

时间:2019-05-02 06:11:46

相关推荐

概率统计Python计算:双正态总体均值差的双侧区间估计

为计算两个正态总体均值差μ1−μ2\mu_1-\mu_2μ1​−μ2​在指定置信度下的双侧置信区间,涉及样本均值x‾\overline{x}x,y‾\overline{y}y​,总体方差σ12\sigma_1^2σ12​,σ22\sigma_2^2σ22​(或样本方差s22s_2^2s22​,s22s_2^2s22​),样本容量n1n_1n1​,n2n_2n2​和置信水平1−α1-\alpha1−α。算法为

计算样本均值差x‾−y‾\overline{x}-\overline{y}x−y​;计算枢轴量服从的分布以置信度1−α1-\alpha1−α为概率的双侧分位点aaa和bbb;计算增量因子ddd。若已知总体方差为σ12n1+σ22n2\sqrt{\frac{\sigma_1^2}{n_1}+\frac{\sigma_2^2}{n_2}}n1​σ12​​+n2​σ22​​​,否则为sw1n1+1n2s_w\sqrt{\frac{1}{n_1}+\frac{1}{n_2}}sw​n1​1​+n2​1​​,其中sw=(n1−1)s12+(n2−1)s22n1+n2−2s_w=\sqrt{\frac{(n_1-1)s_1^2+(n_2-1)s_2^2}{n_1+n_2-2}}sw​=n1​+n2​−2(n1​−1)s12​+(n2​−1)s22​​​;计算置信下限(x‾−y‾)−a⋅d(\overline{x}-\overline{y})-a\cdot d(x−y​)−a⋅d和置信上限(x‾−y‾)+a⋅d(\overline{x}-\overline{y})+a\cdot d(x−y​)+a⋅d。

将此算法与博文《单个正态总体均值的双侧区间估计》中计算单个正态总体均值μ\muμ的双侧置信区间算法相比,可知两者的不同点就在于单总体的样本均值x‾\overline{x}x变成双总体样本均值的差x‾−y‾\overline{x}-\overline{y}x−y​,置信区间增量因子ddd由σ2n\sqrt{\frac{\sigma^2}{n}}nσ2​​,或s2n\sqrt{\frac{s^2}{n}}ns2​​变成σ12n1+σ22n2\sqrt{\frac{\sigma_1^2}{n_1}+\frac{\sigma_2^2}{n_2}}n1​σ12​​+n2​σ22​​​(已知总体方差),或sw1n1+1n2s_w\sqrt{\frac{1}{n_1}+\frac{1}{n_2}}sw​n1​1​+n2​1​​(未知总体方差)。其他都一致。所以,我们可以通过调用博文《单个正态总体均值的双侧区间估计》中定义的muBounds函数,传递合适的参数来计算双正态总体均值差的置信区间。

例1为比较I,II两种型号步枪子弹的枪口速度,随机地取I型子弹10发,得到枪口速度的平均值x‾=500m/s\overline{x}=500m/sx=500m/s,标准差s1=1.10m/ss_1=1.10m/ss1​=1.10m/s。随机地取II型子弹20发,得到枪口速度的平均值为y‾=496m/s\overline{y}=496m/sy​=496m/s,标准差s2=1.20m/ss_2=1.20m/ss2​=1.20m/s。假设两个总体都服从正态分布,且有生产过程可认为方差相等。计算两个总体的均值差μ1−μ2\mu_1-\mu_2μ1​−μ2​的置信水平为0.95的置信区间。

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

import numpy as np#导入numpyxmean=500 #样本均值1ymean=496 #样本均值2mean=xmean-ymean#样本均值差s1=1.10**2 #样本方差1s2=1.20**2 #样本方差2n1=10 #样本容量1n2=20 #样本容量2sw=np.sqrt(((n1-1)*s1+(n2-1)*s2)/(n1+n2-2)) #swd=sw*np.sqrt(1/n1+1/n2) #置信区间增量因子confidence=0.95 #置信度a, b=muBounds(mean, d, confidence, n1+n2-2) #计算置信区间print('(%.4f, %.4f)'%(a, b))

由于本例计算的是未知两个总体方差(虽未知其值,但知相等)前提下,均值差的置信区间,故第12行调用muBounds函数时,传递给参数df的值为ttt分布的自由度n1+n2−2n_1+n_2-2n1​+n2​−2。运行程序,输出

(3.0727, 4.9273)

由于置信下限3.07>03.07>03.07>0,可认为以0.95的置信水平,μ1>μ2\mu_1>\mu_2μ1​>μ2​,即I类子弹的枪口速度均值显著大于II类子弹的枪口速度均值。

例2为提高某一化学生产过程的得率,试图采用一种新的催化剂。为慎重起见,在实验工厂先进行试验。设采用原来的催化剂进行了n1=8n_1=8n1​=8次试验,得到得率的平均值x‾=91.73\overline{x}=91.73x=91.73,样本方差s12=3.89s_1^2=3.89s12​=3.89;采用新的催化剂进行了n2=8n_2=8n2​=8次试验,得到得率平均值y‾=93.75\overline{y}=93.75y​=93.75,样本方差s22=4.02s_2^2=4.02s22​=4.02。假设两个总体都可认为服从正态分布,且方差相等,两个样本独立。试计算两总体均值差μ1−μ2\mu_1-\mu_2μ1​−μ2​的置信水平为0.95的置信区间。

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

import numpy as np#导入numpyxmean=91.73#样本均值1ymean=93.75#样本均值2mean=xmean-ymean#样本均值差s1=3.89#样本方差1s2=4.02#样本方差2n1=8#样本容量1n2=8#样本容量2sw=np.sqrt(((n1-1)*s1+(n2-1)*s2)/(n1+n2-2))#swd=sw*np.sqrt(1/n1+1/n2)#置信区间增量因子confidence=0.95#置信水平a, b=muBounds(mean, d, confidence, n1+n2-2)#计算置信区间print('(%.4f, %.4f)'%(a, b))

运行程序,输出

(-4.1527, 0.1127)

由于0∈(−4.1527,0.1127)0\in(-4.1527, 0.1127)0∈(−4.1527,0.1127),可认为新旧两种催化剂对化学过程的得率均值无显著差别。

写博不易,敬请支持:

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

返回《导引》

如果觉得《概率统计Python计算:双正态总体均值差的双侧区间估计》对你有帮助,请点赞、收藏,并留下你的观点哦!

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