DPpackage: Bayesian semi- and nonparametric modeling in R

Alejandro Jara, Timothy E. Hanson, Fernando A. Quintana, Peter Müller, Gary L. Rosner

Research output: Contribution to journalArticlepeer-review

120 Scopus citations


Data analysis sometimes requires the relaxation of parametric assumptions in order to gain modeling exibility and robustness against mis-specication of the probability model. In the Bayesian context, this is accomplished by placing a prior distribution on a function space, such as the space of all probability distributions or the space of all regression functions. Unfortunately, posterior distributions ranging over function spaces are highly complex and hence sampling methods play a key role. This paper provides an introduction to a simple, yet comprehensive, set of programs for the implementation of some Bayesian nonparametric and semiparametric models in R, DPpackage. Currently, DPpackage includes models for marginal and conditional density estimation, receiver operating characteristic curve analysis, interval-censored data, binary regression data, item response data, longitudinal and clustered data using generalized linear mixed models, and regression data using generalized additive models. The package also contains functions to compute pseudo-Bayes factors for model comparison and for eliciting the precision parameter of the Dirichlet process prior, and a general purpose Metropolis sampling algorithm. To maximize computational eciency, the actual sampling for each model is carried out using compiled C, C++ or Fortran code.

Original languageEnglish (US)
Pages (from-to)1-30
Number of pages30
JournalJournal of Statistical Software
Issue number5
StatePublished - Apr 2011


  • Bayesian semiparametric analysis
  • Markov chain monte carlo
  • R
  • Random functions
  • Random probability measures

ASJC Scopus subject areas

  • Software
  • Statistics and Probability
  • Statistics, Probability and Uncertainty


Dive into the research topics of 'DPpackage: Bayesian semi- and nonparametric modeling in R'. Together they form a unique fingerprint.

Cite this