我正在尝试做这样的事情(只是为了说明,我确实知道为什么它不起作用)。
sample(c(TRUE, FALSE), 3, prob=c(0.1,0.2,1), replace=TRUE)
我确实有想要绘制 3 个元素的权重。因此,元素 1 的成功概率应为 0.1,元素 2 的成功概率应为 0.2,元素 3 的概率应为 1。 本质上,我正在执行一系列具有不同成功概率的伯努利试验。
我认为必须有一个简单的解决方法或另一个我没有看到的选项,因为我想到的唯一的事情就是循环
循环会很慢,因为我至少有 5000 个案例要处理。
非常感谢您的任何意见。
最佳答案
rbinom(n = 3, size = 1, prob = c(.10, .25, .5))
会给你你所要求的,但输出为 0/1。如果你希望它是 TRUE/FALSE
您可以调用的向量:as.logical(rbinom(n = 3, size = 1000, prob = c(.10, .25, .5)))
length(prob)
需要等于n
,否则您将得到不一致的输出。
关于r - 不同概率的伯努利试验,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63533212/