首页 > 解决方案 > R:向量化样本,每次采样时概率都会变化

问题描述

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

这不起作用:

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)))

第 10 个值始终为 1,而第一个值有 1/10 的机会为 1 - 这是我想要实现的。

有矢量化方法吗?

标签: roptimizationvectorizationsample

解决方案


您想从二项分布中抽样:

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

推荐阅读