Python z得分概率,反之亦然

Python z得分概率,反之亦然,python,statistics,Python,Statistics,如何计算p值的z得分,反之亦然 例如,如果我有一个p值0.95,我应该得到1.96 我在scipy中看到了一些函数,但它们只在阵列上运行z测试 我可以接触到numpy、statsmodel、pandas和scipy(我想) 正如其他用户所指出的,Python默认情况下计算左/下尾概率。如果要确定包含95%分布的密度点,必须采用另一种方法: >>>st.norm.ppf(.975) 1.959963984540054 >>>st.norm.ppf(.025)

如何计算
p值的
z得分
,反之亦然

例如,如果我有一个p值
0.95
,我应该得到
1.96

我在scipy中看到了一些函数,但它们只在阵列上运行z测试

我可以接触到numpy、statsmodel、pandas和scipy(我想)

正如其他用户所指出的,Python默认情况下计算左/下尾概率。如果要确定包含95%分布的密度点,必须采用另一种方法:

>>>st.norm.ppf(.975)
1.959963984540054
>>>st.norm.ppf(.025)
-1.960063984540054

从Python 3.8开始,标准库将对象作为模块的一部分提供

它可用于获取法向曲线下x%面积所在的
zscore
(忽略两条尾部)

我们可以使用标准正态分布上的(逆累积分布函数)和(累积分布函数)从另一个中获得一个,反之亦然:

from statistics import NormalDist

NormalDist().inv_cdf((1 + 0.95) / 2.)
# 1.9599639845400536
NormalDist().cdf(1.9599639845400536) * 2 - 1
# 0.95

“1+0.95)/2.”公式的解释可在本节中找到。

如果您对T-test感兴趣,可以执行类似操作:

  • z-统计(z-得分)当数据服从正态分布,已知总体标准偏差σ且样本量大于30时使用。Z-Score告诉您与结果平均值的标准偏差是多少。使用以下公式计算z分数:
    z_得分=(xbar-mu)/西格玛
  • t-统计量(t-得分),也称为学生t-分布,当数据服从正态分布时使用,总体标准偏差(sigma)不已知,但样本标准偏差(s)已知或可以计算,样本量在30以下。T-Score告诉您与结果平均值的标准偏差是多少。使用以下公式计算t分数:
    t_得分=(xbar-mu)/(s/sqrt(n))
总结:如果样本大小大于30,则z分布和t分布几乎相同,可以使用其中任何一种。如果总体标准偏差可用且样本量大于30,则t分布可与总体标准偏差而不是样本标准偏差一起使用

测试
统计数据 查找
表格 查找
值 临界值 正态分布 总体
标准
偏差(西格玛) 样本
大小 z-统计量 z-表 z分数 z-临界是特定置信水平下的z-分数 对 已知的 > 30 t统计量 t形台 t分数 t-临界值是特定置信水平下的t-分数 对 不详 < 30
对于像我这样的其他人来说,对于一个返回1.96但接受答案为1.64的函数的请求感到困惑——区别在于1.96是zscore,其中包含95%的数据(忽略两个尾部),而st.norm.ppf()给出的zscore下面包含95%的数据(只忽略上部尾部)。(续)如果你想从0.95中得到1.96,你必须利用正态分布是对称的这一事实,将你忽略的量分成两半,得到忽略的上尾:
st.norm.ppf(1-(1-0.95)/2)==1.959963984540054
-基本统计信息,是的,但我只是想让它明确。有人能告诉我上面的图表是用什么python代码绘制的吗?@bobthebuilder-Womp-Womp!这个图表实际上是用R(特别是)的包生成的。
from statistics import NormalDist

NormalDist().inv_cdf((1 + 0.95) / 2.)
# 1.9599639845400536
NormalDist().cdf(1.9599639845400536) * 2 - 1
# 0.95