【问题标题】:How can I create a random vector using random uniform generator for multinomial dist如何使用随机统一生成器为多项式分布创建随机向量
【发布时间】:2019-02-21 17:34:34
【问题描述】:

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

【问题讨论】:

    标签: r multinomial


    【解决方案1】:

    您可以使用 sample() 函数从具有自定义概率的分布中采样。在你的情况下:

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

    这给出了从 1 到 4 的 100 个数字以及您提供的概率。

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-03-09
        • 1970-01-01
        • 2017-12-28
        • 2016-02-25
        • 2011-09-18
        • 1970-01-01
        • 2012-06-09
        • 1970-01-01
        相关资源
        最近更新 更多