【问题标题】:Set sum random sample [duplicate]设置总和随机样本[重复]
【发布时间】:2026-01-29 02:20:02
【问题描述】:

所以这对我来说似乎是一个非常简单的问题,但我似乎无法弄清楚。我正在使用 R,我正在尝试生成一个随机样本,其中生成的样本全部总和为一个设定的数字。

【问题讨论】:

  • 你知道中心极限定理,对吧?

标签: r random sample


【解决方案1】:

这是一种需要考虑的方法。生成一些随机数:

n   = 10
x <- runif(n) # or rnorm, rpois, whatever you want to use

然后scale()他们得到你想要的总和。

tot = 100 # this is the sum you want
x <- scale(x, center=FALSE, scale=sum(x)/tot)
all.equal(sum(x), tot) #TRUE

【讨论】: