Bad diagnostics with multilevel models

Hope you have recovered okay!

  1. I’d say that the beta distribution would be worth considering as it is bounded between 0 and 1. This may be feasible with a constant error model, and probably a distributional (varying error) model will be too difficult to fit in this case anyway. So try family = Beta(link = 'identity'). One issue you might find here is that the beta distribution is supported on (0,1), that is, it cannot take values of 0 or 1. So if you have response values of 0% or 100% in your data, these cannot be predicted. We discussed this issue a while ago here Non-linear models using family = Beta(); I believe @saudiwin has since published about the ordered beta model discussed there so you could explore that, or perhaps censoring of the response, depending on what suits your problem.

  2. I think that the priors are important for this case, but probably changing the priors alone won’t help that much.

  3. well, say if e is positively constrained, perhaps you could write your formula as brm(bf(growth ~ d / (1 + (days/ (exp(e)))^b); then your model is effectively for log(e), and its between-subject (or whatever the grouping is) distribution will be log-normal.

  4. you don’t really have any choice then! In my experience with data like these people seem to want to represent the observations as ‘proportion of subject’s maximum response’ or similar, which seems problematic to me. I suppose it makes more sense if the data represent a variable that is in fact a proportion, say the proportion of living cells in the sample from flow cytometry, or something like that.

1 Like