If I remove theta and rho the program works perfectly, but how can I consider spatial information or weighted average that you suggested to me?:
# True parameter values
true_mu = 38.095
true_sigma = 0.005
# Size of dataset
size = 100
# Simulate some data, we suppose each user makes a measurement
y = true_mu + np.random.randn(size)*true_sigma
with pm.Model() as hierachical_model:
# Latent mean and sigma, I want to estimate these parameters
mu = pm.Normal('mu', 0., 10.)
sigma = pm.HalfNormal('sigma', 1.)
like = pm.Normal('like', mu, sigma, observed=y)
trace = pm.sample(500)
print(trace['mu'].mean(axis=0), trace['sigma'].mean(axis=0))
pm.traceplot(trace)
plt.show()