python多元假设检验_【统计学】Student 双边t检验 Python实现假设检验题目

本文通过一个糖厂打包机的例子,演示如何使用Python进行双边t检验。利用numpy和scipy库计算t值、p值,并通过matplotlib绘制t分布,验证打包机工作是否正常。通过不同方法得出的p值和临界值,说明打包机工作正常。
摘要由CSDN通过智能技术生成

糖厂用自动打包机打包,每包标准重量是100千克。每天开工后需要检验一次打包机工作是否正常。某日开工后测得9包重量(单位:千克)如下:

99.3  98.7  100.5  101.2  98.3  99.7   99.5  102.1  100.5

已知包重服从正态分布,试检验该日打包机工作是否正常(a=0.05)?

用这题演示python实现双边检验的几种方法

import numpy as np

from math import *

array = [99.3,98.7,100.5,101.2,98.3,99.7,99.5,102.1,100.5]

#需要对比样本与统计总体的平均值

T_mean=100

x_mean=np.mean(array)

x_std=np.std(array,ddof=1)

样本量较小,总体标准差未知,因此使用t检验量

t=abs(x_mean-T_mean)/(x_std/sqrt(len(array)))

这里检验统计量t值计算如下

t = (样本均值 - 总体均值)/(样本标准差/sqrt(样本个数))【小样本且总体标准差未知的情况下】

print("x_mean:{:.5} ,x_std:{:.5} ,t:{:.5}".format(x_mean,x_std,t))

这里我得出的结果是

x_mean:99.978 ,x_std:1.2122 ,t:0.054996

接下来可以选择

计算出标准t值进行比较

计算出p值

直接人工查表标准t

计算标准t值

计算临界值:

scipy.stats.t.ppf(level_of_confidence, degree_of_freedom)

计算p值

计算p值:

scipy.stats.t.sf(abs(t_score),df) 或scipy.stats.t.cdf(abs(t_score),df)

左尾或右尾的检验分别用上述的sf和cdf方法,双尾检验需需要适时乘个2(如果t大于0那么就是2t.cdf(abs(t_score),df),如果是t小于零就得2t.sf(t_score,df)

除了使用scipy的stats模块,还可以使用matplotlib.pyplot模块(相当于是用原理计算了

import matplotlib.pyplot as plt

s2 = np.random.standard_t(10, size=100000)

h = plt.hist(s, bins=100, density=True)

(np.sum(s2>abs(t))+np.sum(s2

#算出的p值等于方法二用函数算出的p值相同

>p: 0.95745#因为这里调用了random库,所以这里p值算出来不是固定的,会随着数组内容的随机变化而变化

综合1、2就可以有如下代码

print("critical t value:{}\np_value(calculated by function):{}".format(stats.t.ppf(0.95,9),2*stats.t.cdf(t,df=len(array)-1)))

>critical t value:1.8331129326536335

p_value(calculated by function):0.9574902045208937

人工查表

t分布临界值表如下:axis=0 level of freedom; axis =1 df

d15ebd07001d82504dd31fcc6f12bd75.png

或者可以使用在线查表工具,查看各种分布的临界值表

value calculator 临界值查表工具 t检验临界值表

参考以及延伸阅读推荐:

最后可以用这篇里的示例训练一下:假设检验的Python实现

原文链接:https://blog.csdn.net/weixin_44115606/article/details/108887962

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值