如何在八度音程中生成一个总和为常数的随机向量?

时间:2014-03-20 00:16:43

标签: octave probability

我想生成一个随机向量,使得元素加起来为1.这在Octave中可能吗?

我有一堆相互排斥的事件(比如说100),我想给他们分配随机概率(非零,希望正态分布),使他们的概率总和为1.有没有办法做那在Octave?

我知道rand(1,100)但我不知道是否有可能确保这些值总和为常数。

1 个答案:

答案 0 :(得分:3)

生成随机向量。它总计为S。将所有元素除以S - 它现在总计为1

x = rand(1, 100)
x /= sum(x)
sum(x)
# ==> 1

编辑:添加了代码,重命名了令人困惑的变量。