我有两个数组(pdf_#),每个数组都包含一个参数概率(val_#)。如何从这些分布中采样以创建联合后验分布(即在corner plot here中)?对于主持人,看起来我只能传递要从中采样的函数,而不是数组。
这就是我所拥有的:
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]
(实际上,pdf的采样更精细,总和为1)
我想在pdfs之后生成N个样本(带有来自val_1,val_2的x,y)。
答案 0 :(得分:1)
你有没有理由想使用mcmc?
numpy.random.choice(a=val_1, size=N, p=pdf_1)
将从a
中选择一个具有关联概率p
的值。对于一个calladd中的N个样本,设置size
属性。这还不够吗?
啊,如果你有发行版,想要像你的链接那样生成情节,我会用matplotlib.pyplot.hist(array)