emcee EnsembleSampler对象没有属性get_链

2024-07-04 07:32:47 发布

您现在位置:Python中文网/ 问答频道 /正文

使用get_chain()方法访问从emcee生成的值时遇到问题。我的代码如下:

import numpy as np
import emcee
def log_prob(x): return -np.sum(x**2)
p0 = np.array(np.random.randn(12, 1))
sampler = emcee.EnsembleSampler(12, 1, log_prob)
sampler.run_mcmc(p0, 1000)
samples = sampler.get_chain()

当我运行这个程序时,会收到消息AttributeError: 'EnsembleSampler' object has no attribute 'get_chain',我不知道为什么。 我在网上的某个地方读到get_chain()方法只是在较新版本的emcee中添加的,需要从GitHub下载。如果这是一个问题,我将如何从GitHub下载它并确保它仍然与Anaconda一起工作(我是Python/GitHub新手,我不太熟悉如何完成)

任何帮助都将不胜感激!谢谢


Tags: 方法代码importnumpygithublogchainget
1条回答
网友
1楼 · 发布于 2024-07-04 07:32:47

正如您所怀疑的,这可能是由于安装了旧版本的主持人。您可以检查安装的版本

emcee.__version__

emcee3在相当长的一段时间内只是一个候选版本(而不是正式版本),因此您阅读的博客文章给出了建议。它已经发布了,然而,这篇文章可能至少有将近一年的历史了。您应该能够更新到最新的主持人,并通过pip解决您的问题

pip install -U emcee

或者使用conda(看起来像您正在使用的)

conda install -c conda-forge emcee

请参阅有关主持人在其conda forge page上安装conda的更多详细信息

相关问题 更多 >

    热门问题