如何用R语言做自助法(Bootstrap Method)

时间:2026-02-16 03:33:05

1、两组杀虫剂分别处理蚜虫,5小时后记录它们的死亡数,如图所示,问两组死亡数是否有差异?

由于没有假设样本是正态分布的,采用自助法进行计算

如何用R语言做自助法(Bootstrap Method)

2、1. 输入数据

##输入两组数据

x1<-c(35,37,43,41,37,32,45,36,44,31,38,31)

x2<-c(32,33,36,35,36,31,34,32,39,38,39,34,33)

3、2. 样本随机有放回的抽样到自助样本,计算差值统计量,重复1000次

##sample(x1,10,replace = TRUE) 为抽取十个样本形成自助样本

##抽取一次形成自助样本,并做差值得到统计量

mean1 = mean(sample(x1,10,replace = TRUE))-mean(sample(x2,10,replace = TRUE))

##通过for循环,得到第2到1000次的差值统计量,不断的传入mean1中

for(i in 2:1000){

  a = mean(sample(x1,10,replace = TRUE))-mean(sample(x2,10,replace = TRUE))

  mean1 = c(mean1,a)

}

4、3. 将结果排序

sort(mean1)

如何用R语言做自助法(Bootstrap Method)

5、4. 找出97.5%和2.5%的分位点,即初始位置和最末位置的25个数,它们就限制了95%的置信区间

quantile(mean1,0.975)

quantile(mean1,0.025)

如何用R语言做自助法(Bootstrap Method)

6、5. 判断0是否在里面,若在,接受原假设,没有显著性差异;若不在,拒绝原假设,有显著性差异。

结果显示,0在置信区间内,接受原假设,没有显著性差异

© 2026 长短途
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com