mclust is a contributed R package for model-based clustering, classification, and density estimation based on finite normal mixture modeling. It provides functions for parameter estimation via the EM algorithm for normal mixture models with a variety of covariance structures, and functions for simulation from these models. Also included are functions that combine model-based hierarchical clustering, EM for mixture estimation and the Bayesian Information Criterion (BIC) in comprehensive strategies for clustering, density estimation and discriminant analysis. There is additional functionality for displaying and visualizing the models along with clustering, classification, and density estimation results. Several features of the software have been changed in this version, in particular the functionality for discriminant analysis and density estimation has been largely expanded. mclust is licensed under the GPL and distributed through CRAN; see http://cran.r-project.org/web/packages/mclust/index.html.