数据科学20 | 假设检验和P值

2020-07-03 16:53:16 浏览数 (1)

1. 假设检验

假设检验用来判断样本与样本、样本与总体的差异是由抽样误差引起还是本质差别造成的统计推断方法。

零假设H0:差异是由抽样误差引起的,一般形式是假定参数等于某个固定值,如假设组间差异为0、回归系数为0等。

备择假设H1:存在本质差异,单侧检验H1不是参数≠0, 而是参数>0或参数<0。

假设检验思路:先根据样本数据计算一个统计量(如t值、f值等),再根据相应的分布计算出至少得到该统计量的P值,比较P值与显著性水平,最终做出结论。

➢两类错误

假设检验的决策结果:

事实

决策

结果

H0

H0

正确接受H0

H0

H1

I 型错误?(假阳性错误)

H1

H1

正确拒绝H0

H1

H0

II 型错误?(假阴性错误)

需要证据和证据标准来决定拒绝H0,如果提高标准,则可以降低假阳性,但会提高假阴性;如果降低标准,则可以降低假阴性,但会提高假阳性。

在样本量n一定时,?增大,?会减少;?减少,?会增大;固定?不变,只有增加n,才能减少?。

例:呼吸障碍指数RDI每小时发生超过30次呼吸障碍事件被认为是严重睡眠呼吸紊乱SDB的指标。100名伴有其他危险因素的超重患者中,平均RDI为每小时32次,标准差为每小时10次,样本的总体均值是否大于或等于30这个标准?

假设H0:?=30,H1:?>30,?为RDI总体均值。

合理的策略是拒绝H0,RDI均值大于某个常数C,考虑样本均值的可变性,通常选择C使犯I型错误的可能性小于5%,即显著性水平?为0.05,H0正确时被拒绝的可能性为5%。

均值的标准误即估计的总体标准差为10/√100=1。

H0下, ~, ,常数C满足 =0.05。

正态分布的第95百分位数约为? 1.645?,如果C=30 1×1.645=31.645,分布N(30,1)大于C的概率为5%。故当 ≥31.645时应当拒绝H0,并且只有5%的概率被拒绝的H0是真的。

通常将样本均值算出Z值来比较,而不是用常数C与原始数据比较。

,故Z>1.645,事件发生概率小于5%,因此拒绝H0。

因此,当满足 时,拒绝H0。

➢Z检验

  • 检验统计量Test statistic,TS=
  • 满足以下条件时,拒绝H0:
  • 拒绝H0时TS值的区域称为拒绝域
  • Z检验要求样本量n足够大满足中心极限定理,如果样本量n比较小,则可用t检验
  • 当H0为假时拒绝H0的概率称为功效power,功效常用于计算样本量大小

➢t检验

例:假设受试者样本量n=16,则TS= 。

H0:?=30;H1:?>30,?为RDI总体均值。

在H0假设下,TS满足t分布,自由度df=15,TS大于t分布的第95百分位数的概率为5%。计算自由度为15时,t分布的第95百分位数:

代码语言:javascript复制
qt(.95,15)
[1] 1.7531

TS=√16(32-30)/10=0.8<1.7531,无法拒绝H0。

双侧t检验

假设当均值过大或过小时都拒绝H0,此时H1:?≠30。

本例中,这个假设没有太大实际意义,因为我们只对这部分肥胖受试者的RDI是否大于30或其参考值感兴趣。但通常在科学环境中,无论是否具有科学意义,都需要进行双侧检验。

假设H0为真的情况下拒绝H0的概率为5%,分到分布的左尾和右尾的概率为2.5%。 时拒绝H0。

df=15时,t分布的第97.5百分位数和第2.5百分位数:

代码语言:javascript复制
qt(.975,15)
[1] 2.131
qt(.025,15)
[1] -2.131

-2.131<TS=0.8<2.131,无法拒绝H0

如果单侧t检验的结果无法拒绝H0,那么双侧t检验的结果也无法拒绝H0。

例:UsingR包中的father.son数据集。儿子身高的总体均值是否与父亲身高的总体均值相等?

代码语言:javascript复制
library(UsingR)
data(father.son) 
t.test(father.son$sheight - father.son$fheight)

  One Sample t-test

data:  father.son$sheight - father.son$fheight
t = 12, df = 1077, p-value <2e-16
alternative hypothesis: true mean is not equal to 0
95 percent confidence interval:
 0.831 1.163
sample estimates:
mean of x 
    0.997 

检验统计量t=12远大于t分位数,拒绝H0。自由度df=1077非常大,这种情况下t检验和Z检验之间区别不大。函数返回的置信区间可以看到置信区间中的值范围是否具有实际意义。

在上一期置信区间的讨论中,观察总体均值是否在估计均值的置信区间内来判断是否支持假设。假设检验则假设H0:?=?0,H1:?≠?0,根据t检验知道儿子身高的总体均值与父亲身高的总体均值有明显差异,而置信区间不包括0,两个结果并不矛盾。

如果?0在?的95%的置信区间之内,则无法拒绝H0;如果?0在置信区间之外,则拒绝H0。结果与执行假设检验时规定犯I型错误的概率为5%,即?=0.05时相同。

独立样本组间差异比较

此时假设检验的H0:?1=?2,H1:?1≠?2。

例:ChickWeight数据集,包含4种饮食对小鸡生长影响的数据

代码语言:javascript复制
library(datasets)
data(ChickWeight)
library(reshape2)
##define weight gain or loss
wideCW <- dcast(ChickWeight, Diet   Chick ~ Time, value.var = "weight") 
names(wideCW)[-(1 : 2)] <- paste("time", names(wideCW)[-(1 : 2)], sep = "") 
library(dplyr)
wideCW <- mutate(wideCW,
                 gain = time21 - time0)

wideCW14 <- subset(wideCW, Diet %in% c(1, 4))
t.test(gain ~ Diet, paired = FALSE, var.equal = TRUE, data = wideCW14)

  Two Sample t-test

data:  gain by Diet
t = -2.725, df = 23, p-value = 0.01207
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 -108.15  -14.81
sample estimates:
mean in group 1 mean in group 4 
          136.2           197.7

检验统计量t=-2.7,p值小于0.05,拒绝H0。

小样本的精确二项式检验

例:一对夫妇有8个孩子,其中7个是女孩且没有双胞胎,假设怀疑这对夫妇生女孩概率大于0.5。

H0:p=0.5,H1:p>0.5。拒绝域是多少时,拒绝H0的概率小于或等于5%?求统计量在拒绝域中取值的概率小于等于5%的区域,即显著性水平?≤0.05,犯I型错误的概率小于等于5%。

设置拒绝域,拒绝域为女孩数在0到8之间,拒绝H0,相应犯I型错误的概率如下:

REJECTION REGION

TYPE I ERROR RATE

[0 : 8]

1

[1 : 8]

0.9961

[2 : 8]

0.9648

[3 : 8]

0.8555

[4 : 8]

0.6367

[5 : 8]

0.3633

[6 : 8]

0.1445

[7 : 8]

0.0352

[8 : 8]

0.0039

当拒绝域为[0 : 8]时,即如果这对夫妇的女孩数在0到8个之间拒绝H0,拒绝H0概率为100%; 当拒绝域为[6 : 8]时,即这对夫妇生6到8个女孩时拒绝H0,拒绝H0概率约为14%; 当拒绝域为[7 : 8]时,即这对夫妇生7或8个女孩时拒绝H0,拒绝H0概率小于5%; 当拒绝域为[8 : 8]时,即这对夫妇生8个女孩时拒绝H0,拒绝H0概率接近0。

由于二项式的离散性,无法获得精确的5%水平检验,最接近的拒绝域为[7:8],使拒绝H0的概率小于5%。

对于大样本,可以通过近似正态分布进行计算。对于这个二项分布例子,用P值计算拒绝域会更容易。

2. P值(P value)

P值是最常用的“统计学意义”的度量,用于判定假设检验结果,也可根据不同的分布使用分布的拒绝域进行比较。P值就是当H0为真时所得到的样本观察结果或更极端结果出现的概率。

➢P值计算

1.在H0为真的情况下,得到检验统计量TS的分布;

2.根据已知的样本数据计算出TS的值;

3.计算TS或出现更极端的值在分布中的概率

若P值比较小,说明H0为真是一个小概率事件。

例:H0:?=?0,H1:?>?0。df=15,根据样本计算的TS为2.5或更大的概率是多少?

代码语言:javascript复制
pt(2.5, 15, lower.tail = FALSE)
[1]0.01225

单侧检验设置lower.tail = FALSE,可以知道H0为真,TS≥2.5的概率约为1%,或H0为假。

➢显著性水平?

预先设定的拒绝H0的?值称为显著性水平。计算出P值后,将给定的显著性水平α与P 值比较,就可作出检验的结论:P<?,在显著性水平?下拒绝H0;P>?,在显著性水平?下接受H0。

双侧检验的P值为两边分别计算单侧检验得到的较小P值的2倍。

二项式检验

例:一对夫妇有8个孩子,其中7个是女孩且没有双胞胎,怀疑这对夫妇生女孩概率大于0.5。假设每个孩子出生性别是独立的,概率为0.5,计算8个孩子有7个以上是女孩的概率。

H0:p=0.5,H1:p>0.5。

p=0.5,计算P值:

代码语言:javascript复制
choose(8, 7) * 0.5^8   choose(8, 8) * 0.5^8
[1] 0.03516
pbinom(6, size = 8, prob = 0.5, lower.tail = FALSE)
[1] 0.03516

?=0.05或0.04时,P<?,将拒绝H0;当犯I型错误的概率为3%即?=0.03时接受H0。

泊松分布

例:假设一家医院在一段时间内,感染率为每天每100人中有10人感染,每人每天有0.1的感染概率。感染率超过0.05时将实施质控措施,但不希望因为随机波动就实施昂贵的质控程序。

检验模型中观察到感染率0.1大于0.05是否归因于偶然性?假设发生感染的数量服从泊松分布。

H0:?=0.05,?0100=5;

H1:?>0.05。

100个人中每人每天感染风险为0.05,计算10个以上病人感染的概率?

代码语言:javascript复制
ppois(9, 5, lower.tail = FALSE)#计算P(X>9)
[1] 0.03183

感染率为0.05时,10个以上病人感染的概率为3%,是小概率事件,该医院应执行质控程序。

编辑:李雪纯 冯文清

校审:张健 罗鹏

0 人点赞