【问题标题】:How should I specify argument "prob" when using sample() for resampling?使用 sample() 进行重采样时,我应该如何指定参数“prob”?
【发布时间】:2017-05-17 14:16:57
【问题描述】:

总之

我试图更好地理解参数 prob 作为 R 中函数 sample 的一部分。接下来,我会提出一个问题,并提供一段与我的问题相关的 R 代码。

问题

假设我生成了10,000随机标准rnorms。然后我想从这位母亲10,000标准rnorms中抽取size5的样本。

我应该如何在sample 中设置prob 参数,以便从母亲rnorm 中抽取这些5 数字的概率认为母亲rnorm 的中间区域更密集但尾部区域更薄(所以在绘制这 5 个数字时,它会比尾部区域更频繁地从密集区域绘制)?

x = rnorm(1e4)
sample( x = x, size = 5, replace = TRUE, prob = ? ) ## what should be "prob" here?
# OR I leave `prob` to be the default by not using it: 
sample( x = x, size = 5, replace = TRUE )

【问题讨论】:

  • 因为您是从正态分布中提取的,所以您已经在原始分布的中心有更多的观察值。因此sample() 更有可能返回这些。你想在这里模拟什么情况?您希望得到的分布是什么?
  • @MrFlick,你是对的。我想多了。

标签: r statistics sampling resampling


【解决方案1】:

想太多是魔鬼。

您希望按照原始分布或经验分布重新采样这些样本。想想如何获得经验 CDF:

plot(sort(x), 1:length(x)/length(x))

换句话说,经验PDF只是

plot(sort(x), rep(1/length(x), length(x)))

所以,我们想要 prob = rep(1/length(x), length(x)) 或者简单地说,prob = rep(1, length(x)) 因为 sample 在内部规范化 prob。或者,不指定它,因为等概率是默认的。

【讨论】:

    猜你喜欢
    • 2019-04-15
    • 2014-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-19
    • 2021-07-21
    • 2017-11-16
    相关资源
    最近更新 更多