首页 > 解决方案 > 使用引导程序计算 p 值

问题描述

如何使用自举法获得 p 值?我考虑了引导分布不正常的情况。我可以做以下事情,但我不相信这种方法是正确的。我也不相信使用 boot.pval r 包,因为这些结果看起来不正确。可以使用稳健的方法计算 p 值吗?如果是这样,怎么做?

在此处输入图像描述

time = c(14,18,11,13,18,17,21,9,16,17,14,15,
     12,12,14,13,6,18,14,16,10,7,15,10)
group=c(rep(0:1, each=12))
sleep = data.frame(time, group)

require(boot)
diff = function(d1,i){
    d = d1[i,]
    Mean= tapply(X=d$time, INDEX=d$group, mean)
    Diff = Mean[1]-Mean[2]
    Diff
}

set.seed(1234)
b3 = boot(data = sleep, statistic = diff, R = 5000, strata=sleep$group)

b3.under.H0 <- b3$t - mean(b3$t)

pvalue = mean(abs(b3.under.H0) > abs(b3$t0))

pvalue 

标签: bootstrappingp-value

解决方案


推荐阅读