In [35]:
from pprint import pprint
import spacepy.plot as spp
import numpy as np
import pymc as mc
%matplotlib inline
In [22]:
data = np.asarray([mc.TruncatedNormal(name='data', mu=0, tau=3**-2, a=-1, b=np.inf).value for v in range(300)])
spp.plt.hist(data, 20)
Out[22]:
In [30]:
xcent = mc.Uniform('xcent', -10, 10)
spread = 3
x = mc.TruncatedNormal('x', xcent, spread**-2, -1, np.inf, observed=True, value=data)
In [31]:
model = mc.MCMC((xcent, spread, x))
In [34]:
model.sample(50000, burn=100, burn_till_tuned=True, thin=20)
In [37]:
mc.Matplot.plot(model)
pprint(model.summary())
In [42]:
bin, hist, _ = spp.plt.hist(data, 20, normed=True)
In [ ]: