我有一个数字列表,并希望从该列表中进行采样。 然而,采样基于用户指定的一些分布。 我不确定使用权重的别名方法(here)是否正确;我有限的知识说别名方法单独使用统一分布(请纠正我!)。如果我需要使用log-normal作为基础分布或poisson来指定像样本这样的东西怎么办?我该如何做这种抽样?
一个相关的问题,如果我的清单是[1,2,3,4,5]并且平均值是3,我该如何获得抽样?
答案 0 :(得分:0)
你可以在这里使用一堆numpy
函数:
http://docs.scipy.org/doc/numpy/reference/routines.random.html
标准python random
库不提供各种distrubutions RNG。是的,默认的是制服。
答案 1 :(得分:0)
您是否尝试过np.random.choice
matplotlib.rcParams['text.usetex'] = True
matplotlib.rcParams['text.latex.unicode'] = True
b = np.random.choice(a=[1,2,3,4,5], p=[0.2, 0.2, 0.2, 0.2, 0.2])
是根据分布p从p随机抽样的。
您也可以使用poisson