MixtComp (Mixture Composer) is a model-based clustering package for mixed data originating from the Modal team (Inria Lille).
Mixture models parameters are estimated using a SEM algorithm. Five basic models (Gaussian, Multinomial, Poisson, Weibull, NegativeBinomial) are implemented to manage real, integer and categorical variables, as well as two advanced models (Func_CS for functional data and Rank_ISR for rank data). MixtComp has the ability to natively manage missing data (completely or by interval).
MixtComp is used as an R package, but its internals are coded in C++ using state of the art libraries for faster computation. It has been engineered around the idea of easy and quick integration of all new univariate models, under the conditional independence assumption. New models will eventually be available from researches, carried out by the Modal team or by other contributors. Currently, central architecture of MixtComp is built and functionality has been field-tested through industry partnerships.
Online version (not up-to-date): MASSICCC.
The following people contributed to the development of MixtComp: Vincent Kubicki, Christophe Biernacki, Quentin Grimonprez, Serge Iovleff, Matthieu Marbac-Lourdelle, Étienne Goffinet.
Copyrigth Inria - Université de Lille - CNRS
- MixtComp MixtComp C++ library
- JMixtComp C++ executable using JSON files as input/output
- RMixtComp Main R package loading RMixtCompIO and RMixtCompUtilities
- RMixtCompIO R package linking MixtComp C++ library with Rcpp
- RMixtCompUtilities R package containing graphical, formatting and getter functions
- RJMixtComp R package using a JMixtComp executable
- RMixtCompHier R package containing a hierarchical version of MixtComp
- pyMixtComp Minimal python interface using Boost.Python
- Compile MixtComp
- Install RMixtComp
- Data format
- Output object
- Algorithm description
- Add a model
- Add a model in R packages
- Solutions to common errors
- Run MixtComp in command line
Scientific papers about algorithm and models are available in the article folder.
Other tools (for MixtComp dev team)
Branches (for MixtComp dev team)
There are two branches tested on the ci server (using the ci.sh file):
- master this branch is protected, MixtComp must always work on it.
- staging this branch is used for short development, testing new features, bug fixes... and its content is regularly pushed to master when tests are OK.
Big features should be developed on a specific branch.