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

在这里插入图片描述
计算单个总体 X X X~ N ( μ , σ 2 ) N(\mu,\sigma^2) N(μ,σ2)的参数 μ \mu μ对给定置信水平 1 − α 1-\alpha 1α的单侧置信区间,方法与计算双侧置信区间大同小异。

  1. 计算枢轴量分布(已知 σ 2 \sigma^2 σ2 N ( 0 , 1 ) N(0,1) N(0,1),未知 σ 2 \sigma^2 σ2 t ( n − 1 ) t(n-1) t(n1))概率为置信度 1 − α 1-\alpha 1α的单侧分位数 a a a b b b
  2. 计算增量因子 d d d(已知 σ 2 \sigma^2 σ2 σ 2 n \sqrt{\frac{\sigma^2}{n}} nσ2 ,未知 σ 2 \sigma^2 σ2 s 2 n \sqrt{\frac{s^2}{n}} ns2 );
  3. 计算置信下限 x ‾ − a × d \overline{x}-a\times d xa×d或置信上限 x ‾ + a × d \overline{x}+a\times d x+a×d

下列代码定义计算总体均值 μ \mu μ的单侧置信区间的函数

from scipy.stats import norm, t                 #导入norm和t分布
import numpy as np                              #导入numpy
def muBound(mean, d, confidence, df=0, low=True):
    alpha=1-confidence                          #计算置信度1-alpha中的alpha
    if df==0:                                   #已知总体方差
        b=norm.isf(alpha)                       #正态右分位点
    else:                                       #未知总体方差
        b=t.isf(alpha, df)                      #t分布右分位点
    if low:                                     #下限
        return mean-b*d
    return mean+b*d								#上限

在计算总体参数 μ \mu μ的单侧置信区间的函数muBound定义中,参数mean,d,confidence和df的意义与函数muBounds(详见博文《单个正态总体均值的双侧区间估计》)的同名参数的一样,此不赘述。布尔型参数low表示计算的是否为置信下限,默认值True意为下限,若传递False则表示计算上限。为计算枢轴量服从的分布的右分位点(左分位点与之对称),第4行计算置信度 1 − α 1-\alpha 1α中的 α \alpha α。第5~8行的if-else语句根据参数df的值计算正分布态右分位点或t分布的右分位点(详见博文《标准正态分布分位点计算》《学生分布分位点计算》)。第9行计算增量因子。第9~10行的if语句,计算置信下限并返回,第11行计算置信上限并返回。
例1 从一批灯泡中随机地抽取5只作寿命试验,测得寿命(单位:h)为
1050 , 1100 , 1120 , 1250 , 1280 1050, 1100, 1120, 1250, 1280 1050,1100,1120,1250,1280
设灯泡的寿命 X X X~ N ( μ , σ 2 ) N(\mu,\sigma^2) N(μ,σ2),其中 σ 2 = 10000 \sigma^2=10000 σ2=10000。试计算灯泡平均寿命置信水平为 0.95 0.95 0.95的单侧置信下限。
解: 下列代码完成本例计算。

import numpy as np                          #导入numpy
x=np.array([1050, 1100, 1120, 1250,  1280]) #样本观测值
mean=x.mean()                               #样本均值
sigma=100                                   #总体均方差
n=x.size                                    #样本容量
d=sigma/np.sqrt(n)                          #置信下限增量
confidence=0.95                             #置信水平
a=muBound(mean, d, confidence)              #计算单侧置信下限
print('mu>=%.3f'%a)

由于例中计算的是已知总体方差 σ 2 = 10 0 2 \sigma^2=100^2 σ2=1002情形下 μ \mu μ的单侧置信下限,故第8行调用muBound函数时参数df和low均各自取其默认值0和True。运行程序,输出

mu>=1086.440

例2 从一批汽车轮胎中随机地取16只做磨损试验,记录其磨坏时所行使的路程(单位:km),算得样本均值为 x ‾ = 41116 \overline{x}=41116 x=41116,样本标准差 s = 6346 s=6346 s=6346,设此样本来自正态总体 X X X~ N ( μ , σ 2 ) N(\mu,\sigma^2) N(μ,σ2) μ \mu μ σ 2 \sigma^2 σ2均未知。试计算置信度为95%, μ \mu μ的置信下限。
解: 下列代码完成本例计算。

import numpy as np                              #导入numpy
mean=41116                                      #样本均值
s=6346                                      	#样本均方差
n=16                                            #样本容量
confidence=0.95                                 #置信度
d=sigma/np.sqrt(n)                              #置信下限因子
a=muBound(mean, d, confidence, n-1)             #计算置信下限
print('mu>=%.3f'%a)

程序中第6行计算置信下限因子 s / n s/\sqrt{n} s/n ,第7行调用muBound函数计算总体均值 μ \mu μ的单侧置信下限,故参数low使用默认值True,由于未知总体方差 σ 2 \sigma^2 σ2,故参数df传递给 t t t分布的自由度n-1。运行程序,输出

mu>=38334.785

写博不易,敬请支持:
如果阅读本文于您有所获,敬请点赞、评论、收藏,谢谢大家的支持!
代码诚可贵,原理价更高。若为AI学,读正版书好
返回《导引》

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值