本博客根据非常好的excel资料而编写,使用python语言操作,预计使用一周的时间更新完成。需要《非常好的excel资料》word文档,欢迎发邮件给[email protected],免费发放。这篇博客对应《非常好的excel资料》里的第2章节。
1.1 方差已知时u的置信区间
① 数据如下
②python代码
tree2=pd.read_csv('D:\data2.csv',encoding='gbk')
tree2=tree2['high']
mean2 = tree2.mean()
std2=tree2.std()
svar2=np.sqrt(tree2.var())
def wucha2(a,s,n):
return np.abs(a*(s/np.sqrt(n)))
def gujiqujian2(a,s,n,mean):
cha=wucha2(stats.norm.ppf(1-(1-a)/2) ,s,n)
print('[',mean-cha,mean+cha,']')
③结果图
1.2 方差未知时的u置信区间
① 数据
②代码
def wucha3(a,s,n):
return np.abs(a*s/np.sqrt(n))
def gujiqujian3(a,s,n,mean):
cha=wucha3(t.ppf(1-(1-a)/2,n-1),s,n)
print('[',mean-cha,mean+cha,']')
③结果图
1.3 u未知时的方差的置信区间
① 数据
②代码
time=pd.read_csv('D:\data3.csv',encoding='gbk')
time=time['time']
mean3=time.mean()
std3 = time.std()
def Han(n,s,a):
y1=chi2.ppf(1-(1-a)/2,n-1)
y2=chi2.ppf(1-(1-(1-a)/2),n-1)
x=(n-1)*s**2
print('[',x/y1,x/y2,']')
③结果图
1.4 两方差相等但不知其值,求u1-u2的置信区间
① 数据
②代码
data4=pd.read_csv('D:\data4.csv',encoding='gbk')
data41=data4['甲'][:5]
data42=data4['乙'][:7]
mean41=pd.to_numeric(data41).mean()
mean42=pd.to_numeric(data42).mean()
var41=pd.to_numeric(data41).var() #方差
var42=pd.to_numeric(data42).var()
count41 = pd.to_numeric(data41).count()
count42 = pd.to_numeric(data42).count()
count4 = count41+count42-2
mean4 = mean41-mean42
def gujiqujian4(a,count,count11,count12,var11,var12,mean):
tt=t.ppf(1-a/2/2,10)#t0.05 (10) 临界值
s = np.sqrt(((count11-1)*var11+(count12-1)*var12)/count)*np.sqrt(1/count11+1/count12)
print('[',mean-tt*s,mean+tt*s,']')
③结果图
1.5 u1和u2未知时,方差比的置信区间
① 数据
②代码
countA=data4['样本数'][0]
countB=data4['样本数'][1]
varA=data4['样本方差'][0]
varB=data4['样本方差'][1]
zhixindu=data4['置信度'][0]
def gujiqujianli5(a,count1,count2,var1,var2):
ff1=f.ppf(a/2,count1-1,count2-1)
ff2=f.ppf((1-a/2),count1-1,count2-1)
x=var1
y1=var2*ff1
y2=var2*ff2
print('[',x/y2,x/y1,']')