R:矢量化样本,每次采样的概率都不同

时间:2019-03-15 11:33:09

标签: r optimization vectorization sample

我正尝试对10个值为0或1的值进行采样,每次都有定义的(但不同的)概率。

这不起作用:

sample(0:1, size = 10, replace = T, prob = seq(0.1, 1, 0.1))

这确实有效:

sapply(seq(0.1, 1, 0.1), function(x) sample(0:1, size = 1, prob = c(1-x, x)))

第十个值始终为1,而第一个值有1/10的可能性就是1-这是我想要实现的。

有矢量化方法吗?

1 个答案:

答案 0 :(得分:3)

您要从二项分布中进行采样:

rbinom(10, 1, prob = seq(0.1, 1, 0.1))