首页 > 代码库 > 拔靴法--Bootstrap--R语言实现

拔靴法--Bootstrap--R语言实现

  拔靴法属于重复抽样(resampling)方法,与Monte Carlo相比,二者真实的母体不同。它是将已有的观察值作为母体重复抽样,

以求取原先资料不足二无法探讨的资料特性。

  举个例子,假设x1,x2,...,xn为来自同一分配的观察值,我们想了解这个分配的中位数。

设一组有Poisson分配抽出的随机样本,6 7 7 7 7 8 ... 15 15 17 20,共30个。已知样本中位数为10。

  这里我们分别用MC方法和拔靴法模拟10000次,看中位数的分布。

 

# Monte Carlot1 = NULLfor (i in 1:10000){  x1=rpois(30,10);y1=median(x1);t1=c(t1,y1)}# Bootstrapt2 = NULLx0 = rpois(30,10)for (i in 1:10000){  x2=sample(x0,30,T);y2=median(x2);t2=c(t2,y2)}par(mfrow=c(1,2))hist(t1,xlab = "Median",main = "Monte Carlo")hist(t2,xlab = "Median",main = "Bootstrap")

  输出:

技术分享

  之后检验二者标准差,发现差别并不大:

技术分享

 

拔靴法--Bootstrap--R语言实现