基于单样本的正态总体均值的z检验:Excel、Python
z检验适用于什么样的情形?
在基于单样本的总体均值的检验中,在下列两种情形下,可适用z检验 [1] :(1)取样的总体服从正态分布且方差已知,此时的z统计量为 z = \frac{\bar X - \mu_0}{\sigma / \sqrt n} ;(2)取样的总体的方差未知,但样本量足够大,此时的z统计量为 z = \frac{\bar X - \mu_0}{s / \sqrt n} ;上式中, \sigma 为已知的总体标准差, s 为样本标准差, \mu_0 为假设的总体均值。
如何在Excel中完成上述的z检验?
Excel中提供了 Z.TEST() 函数,可用于上述的z检验。该函数接受3个参数,第1个为样本数据,第2个为假设的总体均值,第3个为总体标准偏差,是可选参数,当传入参数时,对应上述的情形(1),当省略时,对应上述的情形(2),函数将自行用样本标准差代替。该函数返回的是检验统计量对应的p值。该函数没有提供参数用于指定单边检验还是双边检验,但利用z统计量服从的正态分布的对称性,双边检验的p值是相同参数的单边检验的2倍。
注意,在较早的版本中没有Z.TEST函数,只有ZTEST函数,官方建议使用Z.TEST,但为了兼容任保留了ZTEST函数。
如何在Python中完成上述的z检验?
方法一:利用 scipy.stats.norm 模块
sceipy.stats没有提供直接的函数用于z检验,但很容易构造。假设的总体均值为 \mu_0 ,样本均值为 \bar X ,总体标准差为 \sigma ,当方差未知时,用样本标准差 s 代替。
如果我们是先求出p值,再与显著性系数 \alpha 比较,那么可以使用scipy.stats.norm.sf函数。
- 单边检验:
- H_0: \mu \le \mu_0 : p值等于scipy.stats.norm.sf( (\bar X - \mu_0)/(\sigma/\sqrt n) )
- H_0: \mu \ge \mu_0 : p值等于1-scipy.stats.norm.sf( (\bar X - \mu_0)/(\sigma/\sqrt n) )
- 双边检验:p值等于scipy.stats.norm.sf( (\bar X - \mu_0)/(\sigma/\sqrt n) )/ 2
当然,我们也可以根据显著性系数 \alpha 求出临界值,再用z检验量去比较,那么可以使用scipy.stats.norm.isf函数。
- 单边检验:
- H_0: \mu \le \mu_0 : 临界值 z_{\alpha} 等于scipy.stats.norm.isf( \alpha )
- H_0: \mu \ge \mu_0 : 临界值 -z_{\alpha} 等于-scipy.stats.norm.isf( \alpha )或者scipy.stats.norm.isf( 1-\alpha )
- 双边检验:临界值 -z_{\alpha /2} 和 z_{\alpha /2} 等于-scipy.stats.norm.sf( \alpha /2 )和scipy.stats.norm.sf( \alpha /2 )
利用正态分布的性质,也可以使用scipy.stats.norm.cdf等函数来求得p值或临界值,进而完成检验任务。
方法二:利用 statsmodels.stats.weightstats.ztest 函数
statsmodels.stats.weightstats.ztest函数比较丰富,通过传入不同的参数,可以适用单样本和双样本,可单边也可双边。
单样本的总体均值检验的其他情形
当取样的总体的 方差未知 ,且下列两种情形之一满足时 [2] :(1)样本量足够大,或(2)样本量小但是取样的总体服从或近似服从正态分布,适用t检验。参见文章 基于单样本的正态总体均值的t检验:Excel、Python 。
参考
- ^ Richard A. DeFusco, PHD, CFA, Dennis W. McLeavey, DBA, CFA, Jerald E. Pinto, PhD, CFA, and David E. Runkle, PhD, CFA, (2019) "Reading 11. Hypotheis Testing", CFA Curriculum, 624-625
- ^ Richard A. DeFusco, PHD, CFA, Dennis W. McLeavey, DBA, CFA, Jerald E. Pinto, PhD, CFA, and David E. Runkle, PhD, CFA, (2019) "Reading 11. Hypotheis Testing", CFA Curriculum, 621-622