1

I'm creating a Bayesian multilevel model in rstanarm to predict satisfaction by party identity in each year (using year as the second level), with demographic controls. (I'm new to rstanarm so my syntax may be off). The formula is:

stanmodel_levels <- stan_lmer(nhssat ~ 0 + partyid + age_category + marital_status + class  + region +  ethnic_minority + (0 + partyid_new | year), data = df, iter = 2200, chains = 4, seed = 1, adapt_delta = 0.999, QR = FALSE)

The response variable 'nhssat' is on a 5-point Likert scale. Because I am removing the intercepts in order to predict actual levels of satisfaction (i.e. 3.5), my prior is that the coefficients will be close to 3 and definitely not be higher than 5 and lower than 1.

I am having trouble understanding the vignettes about specifying the priors given that this is a multilevel model. What code do I need to use to specify a more accurate prior given the Likert nature of the response variable?

  • "Because I am removing the intercepts in order to predict actual levels of satisfaction" Don't do that. Also, I hope you are aware of this: https://www.theanalysisfactor.com/can-likert-scale-data-ever-be-continuous/ There is nothing in your models that prevents predictions outside of the likert scale. You shouldn't (can't?) deal with the nature of your response variable with the priors. You need to do it with the model specification. – Roland Oct 13 '20 at 09:28
  • @Roland I understand the issues in using linear models for a Likert variable, but in quantitative political science it is fairly common to do this. I also estimate a logistic model, which gives similar substantive results. My question about the priors is primarily because I'm finding I get divergent transitions after warmup, even when adapt_delta is set at .999, and I was wondering if informative priors would help avoid that. – markgburdon Oct 13 '20 at 14:24

0 Answers0