我正在寻找一个简单的函数,它可以根据相应的(也是指定的)概率生成指定随机值的数组.我只需要它来生成浮点值,但我不明白为什么它不能生成任何标量.我可以想到从现有函数构建这个函数的许多方法,但我想我可能只是错过了一个明显的SciPy或NumPy函数.
例如:
>>> values = [1.1, 2.2, 3.3]
>>> probabilities = [0.2, 0.5, 0.3]
>>> print some_function(values, probabilities, size=10)
(2.2, 1.1, 3.3, 3.3, 2.2, 2.2, 1.1, 2.2, 3.3, 2.2)
Run Code Online (Sandbox Code Playgroud)
注意:我发现了scipy.stats.rv_discrete,但我不明白它是如何工作的.具体来说,我不明白这(下面)的含义是什么,也不应该做什么:
numargs = generic.numargs
[ <shape(s)> ] = ['Replace with resonable value', ]*numargs
Run Code Online (Sandbox Code Playgroud)
如果rv_discrete是我应该使用的,你能否提供一个简单的例子和对上述"形状"陈述的解释?