Hier ist ein nacktes Stück Code herausziehen, die einen Fehler erzeugt:PyMC: Direkt eines Objekts Namensänderung gilt nicht, wenn Spuren
import pymc
import numpy as np
a = pymc.Normal('a', 1, 1)
b = np.empty(4, dtype=object)
for i in range(4):
b[i] = 1*a
b[i].__name__ = 'b_%i'%i
M = pymc.MCMC([a,b])
M.sample(10)
M.trace('b_0') # Causes a KeyError:'b_0'
Ich verstehe nicht, warum ich ein KeyError: 'b_0'
bekommen, wenn ich versuche, um die Spur von b_0
und alle anderen b's zu extrahieren. Werden die Spuren nicht gespeichert? Wenn ja, gibt es eine Möglichkeit, einen Schalter direkt zu wechseln, um das zu ändern, ohne das Objekt mit @deterministic zu machen.