我有两个数组(pdf_#),每个数组都包含参数的概率(val_#)。如何从这些分布中取样以创建联合后验分布(例如,在街角地块中)?对于emcee来说,我似乎只能传递要从其中采样的函数,而不能传递数组。
以下是我所拥有的:
pdf_1 = [.1, .1, .25, .3, .15]
pdf_2 = [.25, .3, .2, .1, .4]
val_1 = [2, 3, 4, 5, 6]
val_2 = [1, 2, 3 ,4 ,5](在现实中,pdfs被更细地采样,并被加到1)
我想在pdfs之后生成N个样本(从val_1,val_2生成x,y)。
发布于 2017-03-07 23:14:39
你想使用mcmc有什么原因吗?
numpy.random.choice(a=val_1, size=N, p=pdf_1)将从a中选择一个具有关联概率p的值。对于一个calladd中的N个示例,设置size属性。这还不够吗?
https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.choice.html#numpy.random.choice
啊,如果您有发行版,并且希望生成链接中的图,我将使用matplotlib.pyplot.hist(array)
https://stackoverflow.com/questions/42660022
复制相似问题