What’s this about?

The new bayes prefix can fit Bayesian panel-data models. If you read Bayesian regression models using the bayes prefix, this may surprise you. But what you might have overlooked is that panel-data models can be fit using commands for multilevel models.

You can read all about Bayesian multilevel models.

But when you see

. mixed y x1 x2 || id:

instead think

. xtset id
. xtreg y x1 x2

which fits a panel-data linear regression model with random intercepts by id. Thus, while you can’t fit the Bayesian version of this model by typing

. bayes: xtreg y x1 x2

you can type

. bayes: mixed y x1 x2 || id:

And because you are using mixed, you are not limited to random intercepts. You can include random coefficients too. If the coefficient for x2 varies across ids, type

. bayes: mixed y x1 x2 || id: x2

For an example, see Random coefficients.

Bayesian panel-data models are not only for continuous outcomes. You can just as easily type for binary outcomes


. bayes: meprobit y x1 x2 || id:


for count outcomes


. bayes: mepoisson y x1 x2 || id:


or for censored outcomes


. bayes: metobit y x1 x2, ll(0) || id:


Or use any of the 12 multilevel estimators that support the bayes prefix.



Outcomes: continuous, censored, binary, ordinal, count, survival

Random effects

Random intercepts

Random coefficients

Full Bayesian-features support


Tell me more

Learn more about Stata’s Bayesian analysis and panel-data features.

For more information, see

Bayesian regression models using the bayes prefix
Bayesian multilevel models
Bayesian estimation
[BAYES] bayes
Stata Bayesian Analysis Reference Manual