brms icon indicating copy to clipboard operation
brms copied to clipboard

Implement the zero-inflated dirichlet distribution

Open jackobailey opened this issue 5 years ago • 5 comments

Dirichlet regression is possible in brms using the dirichlet family. But this requires that outcomes be non-zero.

Election outcomes are one case where outcomes are distributed according to the dirichlet distribution (on the probability scale and sum to 1), but that exhibit considerable zero-inflation. This is often true where parties do not stand for whatever reason.

Rather than fudge this by replacing 0 with a tiny number, it would be good to be able to model the zero-inflation. Effectively, this would be a multinomial extension of the zero-inflated beta distribution in the same way that the dirichlet distribution is a multinomial extension of the standard beta distribution.

At present, this is possible using the zadr() function in the Compositional package. But this lacks a lot of functionality and is Frequentist, not Bayesian.

An accompanying paper for the Compositional package is available here. There is also another good paper detailing zero-inflated dirichlet regression in the context of microbiome data here.

jackobailey avatar Aug 05 '19 11:08 jackobailey

Thank you Paul! I am also interested in using the zero-adjusted Dirichlet Distribution!

manuelreif avatar Jul 31 '20 18:07 manuelreif

Something like the zadr() function would be a very welcome addition to brms Paul.

mansillo avatar Aug 02 '20 16:08 mansillo

See also Stan implementation of a simplified set of models in the zoid package

wpetry avatar Jan 15 '24 19:01 wpetry