For BRMS zero-inflated / hurdle models, what does the output of `fitted` produce?


Are the values generated assuming we’ve “jumped” the hurdle? Or is the hurdle probability multiplied first? I couldn’t find anything in the documentation on this – apologies if I missed it.


By default, fitted() returns the predicted mean of the response distribution which is a combination of both parts of a hurdle model. If you want it to return only one of the two parts, use argument dpar = "mu" or `dpar = “hu”.


I understand dpar is accepted in fitted() but it doesn’t seem to be used by predict(). I tried and it returns the same results with or without dpar. Is it possible to enable dpar in there or is there a work around? Thanks.


predict() does predict new response values based on the likelihood and all of its distributional parameters. A dpar argument is not sensible in this context.


OK, so it’s not possible/sensible to predict (i.e. including measurement errors) separately for the zero/non-zero (hurdle) and non-zero only (e.g. gamma) parts of the model? Sorry, I’m not a statistician so I would like to try and understand why it’s not sensible to predict if we can do other assessments (fitted, residuals, marginal plots) for these model parts separately. Thanks.


When you want the estimated values of hu, go for fitted(..., dpar = "hu") as you already did. You may call those “predictions”, too, but it’s not predictions of responses so we try to avoid using that term in this context.

I am not sure what you mean by measurement error, but if you mean the error of the response distribution (i.e., the likelihood) than this can by definition only apply to the responses itself.


Excellent, thank you for the clarification!