我试图更好地理解参数prob
作为R中函数sample
的一部分。接下来,我都问一个问题,并提供一段R代码与我的问题有关。
假设我已生成10,000
随机标准rnorm
。然后,我想从此母size
标准5
中抽取10,000
rnorm
的样本。
如何在prob
内设置sample
参数,以便从母5
中抽取这些rnorm
数字的概率认为是母亲的中间区域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 )
答案 0 :(得分:2)
过度思考是魔鬼。
您希望按照原始分布或经验分布对这些样本进行重新取样。想想如何获得经验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
。或者,只是保留未指定,因为默认值相等。