I am fitting a multi level model for linear regression where I would like to use multiple columns. I am using the code from this tutorial with a variable intercept and variable slope per county:

with Model() as varying_intercept_slope:

`# Priors mu_a = Normal('mu_a', mu=0., tau=0.0001) sigma_a = Uniform('sigma_a', lower=0, upper=100) tau_a = sigma_a**-2 mu_b = Normal('mu_b', mu=0., tau=0.0001) sigma_b = Uniform('sigma_b', lower=0, upper=100) tau_b = sigma_b**-2 # Random intercepts a = Normal('a', mu=mu_a, tau=tau_a, shape=len(set(county))) # Random slopes b = Normal('b', mu=mu_b, tau=tau_b, shape=len(set(county))) # Model error sigma_y = Uniform('sigma_y', lower=0, upper=100) tau_y = sigma_y**-2 # Expected value y_hat = a[county] + b[county] * floor_measure # Data likelihood y_like = Normal('y_like', mu=y_hat, tau=tau_y, observed=log_radon)`

How could we use more than one predictor for the vector b? Right now the model is only using floor_measure, but what if I want to use other predictors (p predictors)? Is there a way to use the shape argument to be able to specify priors for each of them and still use the multi-level per county slope?

Thanks!