【发布时间】:2015-01-14 17:00:34
【问题描述】:
我有一个array 的值,这些值是从观察值y1 开始生成的,并假设该值具有poissonian 分布:
array = np.random.poisson(np.real(y1), 10000)
如果我想从array 中提取一个随机值,该随机值是泊松分布的,因此有一个在y1 处达到峰值的“最可能值”?我怎样才能做到这一点?它是通过简单的随机提取工作,还是需要指定其他内容?
编辑:试图更具体。我有一个数组,其元素是泊松分布的。如果我想从该数组中随机提取一个元素,我应该告诉方法有关数组分布的信息,还是没有必要? 我希望这会澄清一点。
【问题讨论】:
-
不管数组中的数据如何,如果你想生成一个随机索引来从数组中获取一个值,你只需使用
random.randint(0, arraySize) -
您的问题有点难以解释...例如,根据我的解释,如果您有分布 [.25, .75],您希望随机选择类似于[1, 0, 1, 1, 1, 0, 1, 1...],即 1 的数量大约是 0 的 3 倍?或者,按照 Alex 和 mickey 的解释,你的 1 和 0 一样多?那么你想要哪个(或其他)?
-
@tom10,对不起,我不明白你的问题。我的意思是,在泊松分布中,有一个更可能的值(峰值)和不太可能的值(尾部)。当方法从泊松分布数组中随机选择时,它是否需要知道分布,或者这不是必需的,因为分布已经在数组中定义了?
-
“随机”这个词是不够的。如您所知,随机数可以有分布。您是要以相等的概率还是基于此分布(即,与分布中值的概率)来选择每个元素。因此,再次重申,如果您的分布是 [.25, .75],您希望选择 0.25 的频率与选择 0.75 的频率相同,还是希望更频繁地选择 0.75,因为它是更可能的值。
-
@tom10,是的,我希望随机选择更频繁地选择更可能的值,当然。但是,我的疑问是:如果更可能的值也更频繁,模块是否需要知道分布?即,如果我们有 [.25, .75, .75, .75],自然会更频繁地提取更可能的值......
标签: python numpy random poisson