python分位点计算(正态分布,卡方分布,t分布,F分布)

调用scipy包的stats统计模块,可以直接得出不同分布的分为点的值,相对于,查表,或使用excel,使用起来会更加便捷

下面是需要用到的函数和代码,使用简单方便。

ppf 单侧 左分位点
isf 单侧 右分位点
interval 双侧 双侧分位点

正态分布

from scipy import stats

#显著性水平
a = 0.05

# 单测 左分位点
norm_a_left = stats.norm.ppf(a)
# 单侧 右分位点
norm_a_right = stats.norm.isf(a)
# 双侧分位点
norm_a_2 = stats.norm.interval(1-a)

print('单侧左分位点:',norm_a_left )
print('单侧右分位点:',norm_a_right )
print('双侧分位点:',norm_a_2 )

单侧左分位点: -1.6448536269514729
单侧右分位点: 1.6448536269514729
双侧分位点: (-1.959963984540054, 1.959963984540054)

t分布

from scipy import stats

#显著性水平
a = 0.05
#自由度 
df = 6

# 单侧 左分位点
T_a_left =stats.t.ppf(a,df)
# 单侧 右分位点
T_a_right =stats.t.isf(a,df)
# 双侧分位点
T_a_2 = stats.t.interval(1-a,df)

print('单侧左分位点:',T_a_left)
print('单侧右分位点:',T_a_right)
print('双侧分位点:',T_a_2)

单侧左分位点: -1.943180280392782
单侧右分位点: 1.943180280392782
双侧分位点: (-2.4469118487916806, 2.4469118487916806)

卡方分布

from scipy import stats

#显著性水平
a = 0.05

# 自由度
df = 16


# 单侧 左分位点
X2_a_left =stats.chi2.ppf(a,df)
# 单侧 右分位点
X2_a_right =stats.chi2.isf(a,df)
# 双侧分位点
X2_a_2 = stats.chi2.interval(1-a,df)

print('单侧左分位点:',X2_a_left)
print('单侧右分位点:',X2_a_right)
print('双侧分位点:',X2_a_2)

单侧左分位点: 7.9616455723785515
单侧右分位点: 26.296227604864242
双侧分位点: (6.907664353497005, 28.845350723404753)

F分布

from scipy import stats

#显著性水平
a = 0.05

# 自由度 1
df1 = 5
# 自由度 2
df2 = 16

# 单侧 左分位点
F_a_left =stats.f.ppf(a,df1,df2)
# 单侧 右分位点
F_a_right =stats.f.isf(a,df1,df2)
# 双侧分位点
F_a_2 = stats.f.interval(1-a,df1,df2)

print('单侧左分位点:',F_a_left)
print('单侧右分位点:',F_a_right)
print('双侧分位点:',F_a_2)

单侧左分位点: 0.2172135656083406
单侧右分位点: 2.852409165081986
双侧分位点: (0.15617286386272555, 3.5021163355058778)

你可能感兴趣的:(统计,python)