如何在 python 中从 z 分数找到 p 值
在统计学中,我们通常希望确定与假设检验产生的某个 z 分数相关的p 值。如果该 p 值低于一定的显着性水平,我们可以拒绝假设检验的原假设。
要在 Python 中查找与 z 分数相关的 p 值,我们可以使用scipy.stats.norm.sf() 函数,该函数使用以下语法:
scipy.stats.norm.sf(abs(x))
金子:
- x: z 分数
以下示例说明如何查找与左侧测试、右侧测试和双尾测试的 z 分数关联的 p 值。
左测试
假设我们想要在左手假设检验中找到与 z 分数-0.77相关的 p 值。
import scipy.stats #find p-value scipy.stats.norm.sf(abs(-0.77)) 0.22064994634264962
p 值为0.2206 。如果我们使用 α = 0.05 的显着性水平,我们将无法拒绝假设检验的原假设,因为该 p 值不小于 0.05。
正确的测试
假设我们想要在极右假设检验中找到与 z 分数1.87相关的 p 值。
import scipy.stats #find p-value scipy.stats.norm.sf(abs(1.87)) 0.030741908929465954
p 值为0.0307 。如果我们使用 α = 0.05 的显着性水平,我们将拒绝假设检验的原假设,因为该 p 值小于 0.05。
双面测试
假设我们想要在双尾假设检验中找到与 z 分数1.24相关的 p 值。
import scipy.stats #find p-value for two-tailed test scipy.stats.norm.sf(abs(1.24))*2 0.21497539414917388
为了找到这个双边 p 值,我们只需将单边 p 值乘以 2。
p 值为0.2149 。如果我们使用 α = 0.05 的显着性水平,我们将无法拒绝假设检验的原假设,因为该 p 值不小于 0.05。
相关:您还可以使用此在线 P 值 Z 分数计算器来查找 p 值。