是否有内置 numpy函数以概率idx
从一维数组返回索引。所有非负数和总和为一。r
r[i]
r[i]
问问题
59 次
2 回答
1
几乎内置:
# setup (do this once)
cs = r.cumsum()
# get a random value with probability r[i]
rn = np.random.uniform()
idx = cs.searchsorted(rn)
于 2012-10-10T06:51:14.230 回答
0
scipy.stats可以提供帮助,即使它不是按要求在 NumPy 中:
import scipy.stats
r = [.1,.8,.1]
x = range(len(r))
mydist = scipy.stats.rv_discrete(values=(x,r), name='mydist')
print mydist.rvs(size=20)
# array([1, 1, 0, 0, 1, 1, 2, 2, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1])
于 2012-10-10T07:14:19.957 回答