Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from pymc import *
- data = np.array([-1, 0, 4, 0, 2, -2, 1, 0, 0, 2, 1, -3, -1, 0, 0, 1, 0, 1])
- mean = Uniform("mean", -4, 4)
- precision = 2.0**-2
- obs = Normal("obs", mean, precision, value=data, observed=True)
- model = Model( {"mean": mean, "obs": obs})
- mcmc = MCMC(model)
- mcmc.sample(10000, 1000, 1)
- # I can get samples for the "mean" variable
- mean_samples = mcmc.trace("mean")[:]
- hist(mean_samples)
- # but how can I do the equivalent of mcmc.trace("obs")?
- predictive = mc.Normal( "predictive", mean, precision )
- model = Model( {"mean": mean, "obs": obs, "pred":predictive})
- ...
- predictive_traces = mcmc.trace("predictive")[:]
- hist( predictive_traces )
- ppc = pm.sample_ppc(trace, samples=500, model=model, size=100)
Add Comment
Please, Sign In to add comment