如何在Python中从 Z 分数中找到 P 值?
统计中的 p 值是在假设原假设为真的情况下,获得至少与统计假设检验的观察结果一样显着的结果的可能性。 p 值而不是拒绝点用于确定拒绝原假设的最低显着性水平。较低的 p 值表明备择假设有更多的证据支持它,如果 p 值高,备择假设被拒绝并且原假设被拒绝。在本文中,我们将演示如何在Python中从 z-score 中找到 p 值。
我们使用scipy.stats.norm.sf()函数从 z 分数计算 p 值。
句法:
scipy.stats.norm.sf(Z_value)
if z_value is less than zero then we use :
scipy.stats.norm.sf(abs(Z_value))
方法 1:左尾或下尾测试
在分布中,下尾包含最低值。因为数轴上的最低值位于左侧,所以在坐标平面上绘制任何分布时,最低的一组数字将始终显示在左侧。左尾检验的 z 值通常为负值。我们使用 abs()函数。
例子:
Python3
# importing packages
import scipy.stats
# finding p-value
p_value = scipy.stats.norm.sf(abs(-0.67))
print('p value is : ' + str(p_value))
Python
# importing packages
import scipy.stats
# finding p-value
p_value = scipy.stats.norm.sf(abs(1.67))
print('p value is : ' + str(p_value))
Python
# importing packages
import scipy.stats
# finding p-value
p_value = scipy.stats.norm.sf(abs(1.8))*2
print('p value is : ' + str(p_value))
输出:
p value is : 0.25142889509531013
如果我们选择显着性水平或 alpha 值作为 0.05。 p 值大于 alpha 值 (0.05),因此拒绝备择假设并接受原假设。
方法2:右尾或上尾测试
右尾检验或上检验是指向右边的不等式。
例子:
Python
# importing packages
import scipy.stats
# finding p-value
p_value = scipy.stats.norm.sf(abs(1.67))
print('p value is : ' + str(p_value))
输出:
p value is : 0.04745968180294733
如果我们选择显着性水平或 alpha 值作为 0.05。 p 值小于 alpha 值 (0.05),因此接受备择假设并拒绝原假设。
方法 3:双尾测试
在统计学中,双尾检验是使用分布的两侧临界区域来确定样本是否大于或小于给定值范围的过程。
例子:
Python
# importing packages
import scipy.stats
# finding p-value
p_value = scipy.stats.norm.sf(abs(1.8))*2
print('p value is : ' + str(p_value))
输出:
p value is : 0.07186063822585158
如果我们选择显着性水平或 alpha 值作为 0.05。 p 值大于 alpha 值 (0.05),因此拒绝备择假设并接受原假设。