创建具有已知结果和概率的向量

问题描述

我想在R中创建一个具有已知概率和结果的变量。例如,长度为5000的向量具有2个可能的结果1和1.5,其中1出现的时间占65%,而1.5出现的时间占35%。

对此进行扩展,如果我可以创建一个向量,该向量具有2个以上的结果和2个以上的概率。例如,数字1,2,3分别占25%,25%和50%的时间。

edit *根据Akrun的建议,我正在这样做:

x = c(rep(1,65),rep(1.5,35))
sample(x,10)

这是合适的方法吗?

解决方法

我们可以使用sample

sample(1:3,5000,replace = TRUE,prob = c(.25,.25,.50))