生成N个随机整数,这些整数从均匀分布中采样并求和为R中的M

时间:2018-07-17 03:30:30

标签: r

我想生成N个随机整数,总和为M,并且每个整数必须从均匀分布中随机选择。

我的第一个想法是:

1)要枚举M的不同分区,然后

2)随机排列向量的元素

这是我执行此操作的代码:

library(partitions) 
library(gtools) 
N <- 10
M <- 5
x <- t(restrictedparts(M, N)) 
x <- split(x, seq(nrow(x))) 
xp <- permute(x[[sample(1:length(x), 1)]]) 

但是,我不确定我的想法是正确的,因为当M> = 100时,不是从均匀分布中随机选择每个整数,并且代码太长。有没有办法做到这一点?

Python相关问题

Generating N uniform random numbers that sum to M

Generate multiple random numbers to equal a value in python

0 个答案:

没有答案