
Changelog
mclust 6.1.2
CRAN release: 2025-10-31
- Add count() function to efficiently tabulate frequencies given bins.
- Fix bugs in colnames for 1D case.
- Fix (marginal) issues in some
em*()functions that end with the M-step instead of the E-step. - Bug fix on
summary.crimcoords()whennumdiris provided incrimcoords()call. - Set varnames for input data if missing from the name of the input vector or data matrix in all main functions, namely
Mclust(),densityMclust(),MclustDA(), andMclustSSC().
mclust 6.1.1
CRAN release: 2024-04-29
- Corrected computation of df for MclustDA and EDDA classification models.
- Bug fix on
sim()when EVV, EVE, and VVE models for G = 1. - Bug fix on
summary.MclustBootstrap()when computing confidence intervals for G = 1.
mclust 6.1
CRAN release: 2024-02-23
- Added
logsumexp()andsoftmax()functions as a wrapper to efficiently implementations written in Fortran code. - Substituted R code in several parts of the package with the above Fortran-based functions to compute densities and posterior probabilities from Gaussian mixtures.
- Changes on
me.weighted()to use convergence criterion as in other mclust functions and improved efficiency by using the above mentioned Fortran-based functions. This also brings computational improvements in the weighted likelihood bootstrap implemented inMclustBootstrap(..., type = "wlbs"). - Bug fix on
MclustDA()when number of obs is less than number of vars. - Bug fix on
MclustBootstrap(object, ..., type = "pb")whenobjectis of classdensityMclust.
mclust 6.0.1
CRAN release: 2023-11-15
- Changed initialization in
MclustSSC()for components of unlabeled data via k-means. - Corrected output of
summary.MclustSCC()for components of unlabeled data. - Updated citation info with reference to book published by Chapman & Hall/CRC
mclust 6.0.0
CRAN release: 2022-10-31
- Major release of mclust accompanying the upcoming book by Chapman & Hall/CRC.
mclust 5.4.11 (NOT ON CRAN)
- Added
summary.crimcoords()method and removed argumentplotfromcrimcoords()function call.
mclust 5.4.10
CRAN release: 2022-05-20
- Updated banner on startup.
- Updated info on man page for datasets
diabetes,wdbc, andthyroid. - Std. error for cross-validation in
cvMclustDA()uses formula for the weighted standard deviation with weights given by folds size. - Fix .Rd files.
mclust 5.4.9
CRAN release: 2021-12-17
- Added
crimcoords()to compute discriminant coordinates or crimcoords. - Fixed man page for
cvMclustDA().
mclust 5.4.8
CRAN release: 2021-11-05
-
densityMclust()by default draw a graph of the density estimate. - Fixed a bug in computing mixture density if the noise component is present.
- Changed default behaviour of
hc()when called to perform agglomerative hierarchical clustering instead of using for EM initialization. - The default
mclust.options("hcModelName")now returns only the model to be used. - Changed default
partitionargument ofhc()function by addingdupPartion()to remove data duplicates. - Added checks to
mclustBootstrapLRT()to stop if an invalidmodelNameis provided or a one-component mixture model is provided. - Extended the functionality of
cvMclustDA()by including as cross-validated metrics both the classification error and the Brier score. - Updated info on dataset man pages.
mclust 5.4.7
CRAN release: 2020-11-20
- Updated plot method (dendrogram) for hierarchical clustering — now based on classification likelihood.
- Added
MclustSSC()function (and relatedprint,summary,plot, andpredict, methods) for semi-supervised classification. - Exchanged order of models VEE and EVE to account for increasing complexity of EVE.
- Added
cexargument toclPairs()to control character expansion used in plotting symbols. -
em()andme()have nowdataas first argument.
mclust 5.4.6
CRAN release: 2020-04-11
- Fixed issues with source Fortran code with gfortran 10 as reported by CRAN.
- Clean code of
hcCriterion(). - Replaced
CEXargument in functions with standard base graphcexargument. - Removed
ylimargument in function; it can be passed via.... - MclustDA models use the default SVD transformation of the data for initialization of the EM algorithm.
- Added
iclcriterion to object returned byMclust(). - Fixed number of pages for the RJ reference.
-
quantileMclust()uses bisection line search method for numerically computing quantiles.
mclust 5.4.4
CRAN release: 2019-06-27
- Added
classPriorProbs()to estimate prior class probabilities. - Added
BrierScore()to compute the Brier score for assessing the accuracy of probabilistic predictions. - Added
randomOrthogonalMatrix()to generate random orthogonal basis matrices. - Partial rewriting of
summary.MclustDA()internals to provide both the classification error and the Brier score for training and/or test data. - Partial rewriting of
plot.MclustDA()internals. - Added
dmvnorm()for computing the density of a general multivariate Gaussian distribution via efficient Fortran code. - Added Wisconsin diagnostic breast cancer (WDBC) data.
- Added EuroUnemployment data.
- Fixed mismatches in Fortran calls.
- Bugs fix.
mclust 5.4.3
CRAN release: 2019-03-14
- Added website site and update DESCRIPTION with URL.
- Fixed a bug when checking for univariate data with a single observation in several instances. Using
NCOL()works both for n-values vector or nx1 matrix. - Fixed a bug when
hcPairsare provided in theinitializationargument ofmclustBIC()(and relatives) and the number of observations exceed the threshold for subsetting. - Fixed bugs on axes for some manual pairs plots.
- Renamed
type = "level"totype = "hdr", andlevel.probtoprob, insurfacePlot()for getting HDRs graphs - Fixed a bug in
type = "hdr"plot onsurfacePlot(). - Fixed a bug in
as.Mclust(). - Small changes to
summary.MclustDA()whenmodelType = "EDDA"and in general for a more compact output.
mclust 5.4.2
CRAN release: 2018-11-17
- Added
mclustBICupdate()to merge the best values from two BIC results as returned bymclustBIC(). - Added
mclustLoglik()to compute the maximal log-likelihood values from BIC results as returned bymclustBIC(). - Added option
type = "level"toplot.densityMclust()andsurfacePlot()to draw highest density regions. - Added
meXXI()andmeXXX()to exported functions. - Updated vignette.
mclust 5.4.1
CRAN release: 2018-06-27
- Added parametric bootstrap option (
type = "pb") inMclustBootstrap(). - Added the options to get averages of resampling distributions in
summary.MclustBootstrap()and to plot resampling-based confidence intervals inplot.MclustBootstrap(). - Added function
catwrap()for wrapping printed lines atgetOption("width")when usingcat(). -
mclust.options()now modify the variable.mclustin the namespace of the package, so it should work even inside an mclust-function call. - Fixed a bug in
covw()whennormalize = TRUE. - Fixed a bug in
estepVEV()andestepVEE()when parameters containsVinv. - Fixed a bug in
plotDensityMclustd()when drawing marginal axes. - Fixed a bug in
summary.MclustDA()when computing classification error in the extreme case of a minor class of assignment. - Fixed a bug in the initialisation of
mclustBIC()when a noise component is present for 1-dimensional data. - Fixed bugs in some examples documenting
clustCombi()and related functions.
mclust 5.4
CRAN release: 2017-11-22
- Model-based hierarchical clustering used to start the EM-algorithm is now based on the scaled SVD transformation proposed by Scrucca and Raftery (2016). This change is not backward compatible. However, previous results can be easily obtained by issuing the command:
mclust.options(hcUse = "VARS")For more details seehelp("mclust.options"). - Added
subsetparameter inmclust.options()to control the maximal sample size to be used in the initial model-based hierarchical phase. -
predict.densityMclust()can optionally returns the density on a logarithm scale. - Removed normalization of mixing proportions for new models in single mstep.
- Internal rewrite of code used by
packageStartupMessage(). - Fixed a small bug in
MclustBootstrap()in the univariate data case. - Fixed bugs when both the noise and subset are provided for initialization.
- Vignette updated to include references, startup message, css style, etc.
- Various bug fixes in plotting methods when noise is present.
- Updated references in
citation()and man pages.
mclust 5.3 (2017-05)
CRAN release: 2017-05-21
- Added
gmmhd()function and relative methods. - Added
MclustDRsubsel()function and relative methods. - Added option to use subset in the hierarchical initialization step when a noise component is present.
-
plot.clustCombi()presents a menu in interactive sessions, no more need of data for classification plots but extract the data from theclustCombiobject. - Added
combiTree()plot forclustCombiobjects. -
clPairs()now produces a single scatterplot in the bivariate case. - Fixed a bug in
imputeData()when seed is provided. Now if a seed is provided the data matrix is reproducible. - in
imputeData()andimputePairs()some name of arguments have been modified to be coherent with the rest of the package. - Added functions
matchCluster()andmajorityVote(). - Rewrite of print and summary methods for
clustCombiclass objects. - Added
clustCombiOptim(). - Fixed a bug in
randomPairs()when nrow of input data is odd. - Fixed a bug in
plotDensityMclust2(),plotDensityMclustd()andsurfacePlot()when a noise component is present.
mclust 5.2.3 (2017-03)
CRAN release: 2017-03-13
- Added native routine registration for Fortran code.
- Fixed lowercase argument PACKAGE in
.Fortran()calls.
mclust 5.2.2 (2017-01)
CRAN release: 2017-01-22
- Fixed a bug in rare case when performing an extra M step at the end of EM algorithm.
mclust 5.2.1 (2017-01)
CRAN release: 2017-01-03
- Replaced
structure(NULL, *)withstructure(list(), *)
mclust 5.2 (2016-03)
CRAN release: 2016-03-31
- Added argument
xtoMclust()to use BIC values from previous computations to avoid recomputing for the same models. The same argument and functionality was already available inmclustBIC(). - Added argument
xtomclustICL()to use ICL values from previous computations to avoid recomputing for the same models. - Fixed a bug on
plot.MclustBootstrap()for the"mean"and"var"in the univariate case. - Fixed uncertainty plots.
- Added functions
as.Mclust()andas.densityMclust()to convert object to specific mclust classes. - Solved a numerical accuracy problem in
qclass()when the scale ofxis (very) large by making the tolerance eps scale dependent. - Use transpose subroutine instead of non-Fortran 77 TRANSPOSE function in
mclustaddson.f. - Fixed
predict.Mclust()andpredict.MclustDR()by implementing a more efficient and accurate algorithm for computing the densities.
mclust 5.1 (2015-10)
CRAN release: 2015-10-27
- Fixed slow convergence for VVE and EVE models.
- Fixed a bug in orientation for model VEE.
- Added an extra M-step and parameters update in
Mclust()call viasummaryMclustBIC().
mclust 5.0.2 (2015-07)
CRAN release: 2015-07-08
- Added option to
MclustBootstrap()for using weighted likelihood bootstrap. - Added a plot method for
MclustBootstrapobjects. - Added
errorBars()function. - Added
clPairsLegend()function. - Added
covw()function. - Fixed rescaling of mixing probabilities in new models.
- Bug fixes.
mclust 5.0.0 (2015-03)
CRAN release: 2015-04-09
- Added the four missing models (EVV, VEE, EVE, VVE) to the mclust family. A noise component is allowed, but no prior is available.
- Added
mclustBootstrapLRT()function (and corresponding print and plot methods) for selecting the number of mixture components based on the sequential bootstrap likelihood ratio test. - Added
MclustBootstrap()function (and corresponding print and summary methods) for performing bootstrap inference. This provides standard errors for parameters and confidence intervals. - Added
"A quick tour of mclust"vignette as html generated using rmarkdown and knitr. Older vignettes are included as other documentation for the package. - Modified arguments to
mvn2plot()to control colour, lty, lwd, and pch of ellipses and mean point. - Added functions
emX(),emXII(),emXXI(),emXXX(),cdensX(),cdensXII(),cdensXXI(), andcdensXXX(), to deal with single-component cases, so calling the em function works even ifG = 1. - Small changes to
icl(), now it is a generic method, with specialized methods forMclustandMclustDAobjects. - Fixed bug for transformations in the initialization step when some variables are constant (i.e. the variance is zero) or a one-dimensional data is provided.
- Changed the order of arguments in
hc()(and all the functions calling it). - Small modification to
CITATIONfile upon request of CRAN maintainers. - Various bug fixes.
mclust 4.4 (2014-09)
CRAN release: 2014-09-16
- Added option for using transformation of variables in the hierarchical initialization step.
- Added
quantileMclust()for computing the quantiles from a univariate Gaussian mixture distribution. - Fixed bugs on
summaryMclustBIC(),summaryMclustBICn(),Mclust()to return a matrix of 1s on a single column forzeven in the case ofG = 1. This is to avoid error on some plots. - Moved pdf files (previously included as vignettes) to
inst/docwith correspondingindex.html.
mclust 4.3 (2014-03)
CRAN release: 2014-03-31
- Fixed bug for
logLik.MclustDA()in the univariate case. - Added argument
"what"topredict.densityMclust()function for choosing what to retrieve, the mixture density or component density. -
hc()function has an additional parameter to control if the original variables or a transformation of them should be used for hierarchical clustering. - Added
"hcUse"argument inmclust.options()to be passed as default tohc(). - Added the storing of original data (and class for classification models) in the object returned by the main functions.
- Added component
hypvoltoMclustobject which provide the hypervolume of the noise component when required, otherwise is set toNA. - Added a warning when prior is used and BIC returns NAs.
- Fixed bugs in
summary.Mclust(),print.summary.Mclust(),plot.Mclust()andicl()in the case of presence of a noise component. - Fixed bug on some plots in
plot.MclustDR()which requiresplot.new()before callingplot.window(). - Fixed a bug in
MclustDR()for the one-dimensional case. - Corrections to
Mclustman page. - Various small bug fixes.
mclust 4.2 (2013-07)
CRAN release: 2013-07-19
- Fixed bug in
sim*()functions when no obs are assigned to a component. -
MclustDA()allows to fit a single class model. - Fixex bug in
summary.Mclust()when a subset is used for initialization. - Fixed a bug in the function
qclass()when ties are present in quantiles, so it always return the required number of classes. - Various small bug fixes.
mclust 4.1 (2013-04)
CRAN release: 2013-05-01
- Added
icl()function for computing the integrated complete-data likelihood. - Added
mclustICL()function with associated print and plot methods. -
print.mclustBIC()shows also the top models based on BIC. - Modified
summary.Mclust()to return also the icl. - Rewrite of
adjustedRandIndex()function. This version is more efficient for large vectors. - Updated help for
adjustedRandIndex(). - Modifications to
MclustDR()and its summary method. - Changed behavior of
plot.MclustDR(..., what = "contour"). - Improved plot of uncertainty for
plot.MclustDR(..., what = "boundaries"). - Corrected a bug for malformed GvHD data.
- Corrected version of
qclass()for selecting initial values in case of 1D data when successive quantiles coincide. - Corrected version of plot BIC values when only a single G-component models are fitted.
- Various bug fixes.
mclust 4.0 (2012-08)
CRAN release: 2012-08-09
- Added new summary and print methods for
Mclust(). - Added new summary and print methods for
densityMclust(). - Included
MclustDA()function and methods. - Included
MclustDR()function and methods. - Included
me.weighted()function. - Restored hierarchical clustering capability for the EEE model (hcEEE).
- Included vignettes for mclust version 4 from Technical Report No. 597 and for using weights in mclust.
- Adoption of GPL (>= 2) license.
mclust 3.5 (2012-07)
CRAN release: 2012-07-22
- Added
summary.Mclust(). - New functions for plotting and summarizing density estimation.
- Various bug fixes.
- Added
clustCombi()and related functions (code and doc provided by Jean-Patrick Baudry). - Bug fix: variable names lost when G = 1.
mclust 3.4.8 (2010-12)
CRAN release: 2010-12-12
- Fixed output when G = 1 (it had NA for the missing
zcomponent).
mclust 3.4.7 (2010-10)
CRAN release: 2010-10-23
- Removed hierarchical clustering capability for the
EEEmodel (hcEEE). - The R 2.12.0 build failed due to a 32-bit Windows compiler error, forcing removal of the underlying Fortran code for hcEEE from the package, which does not contain errors and compiles on other platforms.
mclust 3.4.6 (2010-08)
CRAN release: 2010-08-10
- Added description of parameters output component to
Mclustandsummary.mclustBIChelp files.
mclust 3.4.4 (2010-04)
CRAN release: 2010-04-08
- Fixed bug in covariance matrix output for EEV and VEV models.
mclust 3.4.2 (2010-02)
CRAN release: 2010-02-13
- Moved CITATION to inst and used standard format
- BibTex entries are in inst/cite.
- Fixed bug in handling missing classes in
mclustBIC(). - Clarified license wording.
mclust 3.4.1 (2010-01)
CRAN release: 2010-01-22
- Corrected output description in
mclustModelhelp file. - Updated mclust manual reference to show revision.
mclust 3.4 (2009-12)
CRAN release: 2009-12-16
- Updated
defaultPriorhelp file. - Added utility functions for imputing missing data with the mix package.
- Changed default max to number of mixture components in each class from 9 to 3.
mclust 3.3.1 (2009-06)
CRAN release: 2009-07-01
- Fixed
plot.mclustBIC()andplot.Mclust()to handlemodelNames. - Changed “orientation” for VEV, VVV models to be consistent with R
eigen()and the literature - Fixed some problems including doc for the noise option.
- Updated the
unmap()function to optionally include missing groups.
mclust 3.3 (2009-06)
- Fixed bug in the
"errors"option forrandProj(). - Fixed boundary cases for the
"noise"option.
mclust 3.2 (2009-04)
CRAN release: 2009-04-29
- Added permission for CRAN distribution to LICENSE.
- Fixed problems with help files found by new parser.
- Changed PKG_LIBS order in src/Makevars.
- Fixed
Mclust()to handle sampling in data expression in call.
mclust 3.1.9 (2008-10)
- Added
procomponent to parameters indens()help file. - Fixed some problems with the noise option.
mclust 3.1.1 (2007-03)
- Default seed changed in
sim*()functions. - Added model name check to various functions.
- Otherwise backward compatible with version 3.0
mclust 3.1 (2007-01)
- Most plotting functions changed to use color.
-
Mclust()andmclustBIC()fixed to work with G=1 - Otherwise backward compatible with version 3.0.