0

我读过默认情况下某些名称被分配给随机变量。我正在下面写我的代码的相关部分。

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')[:]

最后一行引发错误KeyError: 'parameters_0'有人可以解释为什么会这样。

但如果我使用Matplot.plot(m),我会得到图(我附在下面)。我的印象是键是parameters_0,parameters_1,parameters_2。

有什么方法可以让我知道所有存在痕迹的键吗?

在此处输入图像描述)

4

1 回答 1

2

您没有名为parameters_0. 你只有lam, parameters, rv_0, rv_1, 等等。

于 2014-06-12T17:23:52.277 回答