Here is a simplification of the current model I am using:
with pm.Model() as mymodel: precision = pm.Bound(pm.Gamma, lower=.609, upper=33.33)('precision',alpha=Cshape,beta=Crate,shape=nsubj) mushift = pm.Bound(pm.Normal, lower=-0.2618, upper=0.2618)('mushift',mu=Cshift,sd=Ctau,shape=nsubj) y = pm.VonMises('y', mu=mushift, kappa=precision, observed=x)
I have a vector, x, of length 14,000, and a vector, m, also of length 14,000. I want to use x as the “observed” input for “y”, and I want to add “m” to “mushift” for each observation of “x”. In other words, for observation x I want mu=mushift+m, and for observation x I want mu=mushift+m, and so on.
How could I accomplish such a thing without resorting to using a for loop? Thanks greatly for your time, I have been going in circles for a long time trying to find a solution.