python 计算t分布的双侧置信区间
如下所示:
interval=stats.t.interval(a,b,mean,std)t分布的置信区 间
a:置信水平
b:检验量的自由度
mean:样本均值
std:样本标准差
from scipy import statsimport numpy as npx=[10.1,10,9.8,10.5,9.7,10.1,9.9,10.2,10.3,9.9]x1=np.array(x)mean=x1.mean()std=x1.std()interval=stats.t.interval(0.95,len(x)-1,mean,std)
intervalOut[9]: (9.531674678392644, 10.568325321607357)
补充:用Python学分析 - t分布
1. t分布形状类似于标准正态分布
2. t分布是对称分布,较正态分布离散度强,密度曲线较标准正态分布密度曲线更扁平
3. 对于大型样本,t-值与z-值之间的差别很小
作用- t分布纠正了未知的真实标准差的不确定性
- t分布明确解释了估计总体方差时样本容量的影响,是适合任何样本容量都可以使用的合适分布
应用- 根据小样本来估计呈正态分布且方差未知的总体的均值
- 对于任何一种样本容量,真正的平均值抽样分布是t分布,因此,当存在疑问时,应使用t分布
样本容量对分布的影响- 当样本容量在 30-35之间时,t分布与标准正态分布难以区分
- 当样本容量达到120时,t分布与标准正态分布实际上完全相同了
自由度df对分布的影响- 样本方差使用一个估计的参数(平均值),所以计算置信区间时使用的t分布的自由度为 n - 1
- 由于引入额外的参数(自由度df),t分布比标准正态分布的方差更大(置信区间更宽)
- 与标准正态分布曲线相比,自由度df越小,t分布曲线愈平坦,曲线中间愈低,曲线双侧尾部翘得愈高
- 自由度df愈大,t分布曲线愈接近正态分布曲线,当自由度df= ∞ 时,t分布曲线为标准正态分布曲线
图表显示t分布代码:
# 不同自由度的学生t分布与标准正态分布import numpy as npfrom scipy.stats import normfrom scipy.stats import timport matplotlib.pyplot as pltprint(’比较t-分布与标准正态分布’)x = np.linspace( -3, 3, 100)plt.plot(x, t.pdf(x,1), label=’df=1’)plt.plot(x, t.pdf(x,2), label=’df=20’)plt.plot(x, t.pdf(x,100), label = ’df=100’)plt.plot( x[::5], norm.pdf(x[::5]),’kx’, label=’normal’)plt.legend()plt.show()
运行结果:
以上为个人经验,希望能给大家一个参考,也希望大家多多支持好吧啦网。如有错误或未考虑完全的地方,望不吝赐教。
相关文章: