首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用emcee对概率分布函数进行抽样?

使用emcee对概率分布函数进行抽样?
EN

Stack Overflow用户
提问于 2017-03-07 23:04:51
回答 1查看 476关注 0票数 0

我有两个数组(pdf_#),每个数组都包含参数的概率(val_#)。如何从这些分布中取样以创建联合后验分布(例如,在街角地块中)?对于emcee来说,我似乎只能传递要从其中采样的函数,而不能传递数组。

以下是我所拥有的:

代码语言:javascript
复制
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)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-07 23:14:39

你想使用mcmc有什么原因吗?

代码语言:javascript
复制
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)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42660022

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档