如何使用随机均匀发生器为多项式dist创建随机向量

时间:2019-02-21 17:34:34

标签: r multinomial

我如何使用随机均匀生成器创建具有以下概率的多项式分布:((0.2,0.1,0.3,0.4)。

2 个答案:

答案 0 :(得分:1)

您可以使用sample()函数从具有自定义概率的分布中进行采样。就您而言:

x <- sample(1:4, size = 100, replace = TRUE, prob = c(.2, .1, .3, .4))

这将提供100个数字,从1到4,以及您提供的概率。

sample()使用R中的随机数生成器,所以我不确定是否将其视为使用随机统一生成器。

答案 1 :(得分:0)

统一生成[0,1]之间的某个数字,如果它在[0,0.2]中,则将其分配给第一个值(称为x1),如果它在[0.2,0.3],x2,[0.3之间,0.6] x3,[0.7,1] x4。然后确保例如x1的概率为0.2。