为什么参数自举偏差和标准误差在这里为零?

Why parametric bootstrapping bias and standard error are zero here?

我在 R 中执行参数自举以解决一个简单的问题,并且总是让 BiasStandard Error 为零。我做错了什么?

set.seed(12345)
df <- rnorm(n=10, mean = 0, sd = 1)

Boot.fun <- 
  function(data) {
    m1 <- mean(data)
    return(m1)
  }

Boot.fun(data = df)

library(boot)
out <- boot(df, Boot.fun, R = 20, sim = "parametric")
out
    PARAMETRIC BOOTSTRAP


Call:
boot(data = df, statistic = Boot.fun, R = 20, sim = "parametric")


Bootstrap Statistics :
      original  bias    std. error
t1* -0.1329441       0           0

您需要添加一行代码来进行采样,即

Boot.fun <- 
    function(data) {
        data <- sample(data, replace=T)
        m1 <- ...

因为您没有为参数 rand.gen 提供函数来生成随机值。 ?boot 的文档中对此进行了讨论。如果 sim = "parametric" 并且您没有提供生成函数,则原始数据将传递给 statistic 并且您需要在该函数中进行采样。由于您的模拟是 运行 使用相同的数据,因此没有标准误差或偏差。