Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用pymc诊断和非pymc样本的后验总结_Python_Mcmc_Pymc - Fatal编程技术网

Python 使用pymc诊断和非pymc样本的后验总结

Python 使用pymc诊断和非pymc样本的后验总结,python,mcmc,pymc,Python,Mcmc,Pymc,我想在不使用pymc生成的示例上使用pymc诊断和摘要函数。例如,我想在我自己的样本集上使用pymc的mc_错误例程 一些pymc诊断函数可以获取np.array样本,但是,如果我理解正确,其他函数似乎需要跟踪对象。如何将自己的样本集转换为pymc可以处理的跟踪对象?如果有人给我指点,我将不胜感激 我的样本当前存储为一个字典,其中每个键都是我正在采样的变量的名称,并指向样本的np.array 谢谢 您是在谈论batchsd函数吗?这就是PyMC 2中用于计算MC误差的内容。它位于pymc.dat

我想在不使用pymc生成的示例上使用pymc诊断和摘要函数。例如,我想在我自己的样本集上使用pymc的mc_错误例程

一些pymc诊断函数可以获取np.array样本,但是,如果我理解正确,其他函数似乎需要跟踪对象。如何将自己的样本集转换为pymc可以处理的跟踪对象?如果有人给我指点,我将不胜感激

我的样本当前存储为一个字典,其中每个键都是我正在采样的变量的名称,并指向样本的np.array


谢谢

您是在谈论
batchsd
函数吗?这就是PyMC 2中用于计算MC误差的内容。它位于
pymc.database.base
模块中,可以用于任何阵列


pymc.diagnostics
模块包含所有聚合诊断功能,应可用于numpy阵列。

为了将来参考,一些pymc*开发人员正在开发一个名为的独立软件包,其中包括用于诊断和可视化MCMC样本的功能,等等。截至2018年秋季,它仍在大力开发中,但他们目前正在与pandas合作,这是pandas的一个扩展,用于处理张量格式的数据。

谢谢,这非常有帮助!我错误地查看了pymc中stats.py中的mc_error函数,我没有意识到该函数经过了修饰,因此它首先尝试从传递的任何对象中提取跟踪数组。不过,我最初的问题是为了更一般:鉴于pymc有这么多处理跟踪的酷函数,有没有一种规范的方法可以在pymc中不运行mcmc而根据您自己的样本生成跟踪?