python 計算t分佈的雙側置信區間
如下所示:
interval=stats.t.interval(a,b,mean,std)
t分佈的置信區 間
a:置信水平
b:檢驗量的自由度
mean:樣本均值
std:樣本標準差
from scipy import stats import numpy as np x=[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)
interval Out[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 np from scipy.stats import norm from scipy.stats import t import matplotlib.pyplot as plt print('比較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()
運行結果:
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。
推薦閱讀:
- None Found