Hi All,
I am working on a multi-level model with a vector of parameters that are random slopes, and I would like to assign a prior to the distribution of these parameters. Whenever I run the model, the distribution of the mean estimates for these random effect parameters ends up being normal, but I have an a priori reason to expect that they would be non-negative with a positive skew. So, is it possible to treat this expectation as a prior on the distribution of parameters (or at least their estimated means)?
When I specify the parameter, I use:
parameters {
vector[Num_levels] theta;
}
However, specifying a distribution in the model block, like theta ~ normal(0, 1);
or theta ~ chi_square(1);
only affects the distribution of the estimates for each individual parameter in the vector, not the distribution of parameters across the vector. The best I can do is to specify the lower bound of the vector, ie
parameters{
vector<lower=0>[Num_levels] theta;
}
But this is unsatisfying, as the distribution is still normal, and it is more of a constraint than a prior. Is there a way to specify the distribution of parameter means in a vector of parameters as a hyperparameter?