Python 在PyMC中打印跟踪时出现KeyError
我读过,默认情况下,一些名称被分配给随机变量。我正在写下面代码的相关部分Python 在PyMC中打印跟踪时出现KeyError,python,pymc,mcmc,multinomial,dirichlet,Python,Pymc,Mcmc,Multinomial,Dirichlet,我读过,默认情况下,一些名称被分配给随机变量。我正在写下面代码的相关部分 lam = pm.Uniform('lam', lower=0.0, upper=5, doc='lam') parameters = pm.Dirichlet('parameters',[1,1,1,1], doc='parameters') rv = [ pm.Multinomial("rv"+str(i), count[i], prob_distribution[i], value = data[i], observ
lam = pm.Uniform('lam', lower=0.0, upper=5, doc='lam')
parameters = pm.Dirichlet('parameters',[1,1,1,1], doc='parameters')
rv = [ pm.Multinomial("rv"+str(i), count[i], prob_distribution[i], value = data[i], observed = True) for i in xrange(0, len(count)) ]
m = pm.MCMC([lam, parameters, rv])
m.sample(10)
print m.trace('lam')[:]
print m.trace('parameters_0')[:]
最后一行引发了一个错误:'parameters_0'有人能解释一下为什么会这样吗
但是如果我使用Matplot.plot(m)
,我会得到图(我在下面附上了图)。我得到的印象是键是参数0、参数1、参数2
是否有某种方法可以让我知道所有存在跟踪的密钥
)您没有名为
参数\u 0
的节点。您只有lam
,参数
,rv_0
,rv_1
等