Infinite Mixtures of Infinite Factor Analysers and Related Models
Overview
Provides flexible Bayesian estimation of Infinite Mixtures of Infinite Factor Analysers and related models, for nonparametrically clustering high-dimensional data, introduced by Murphy et al. (2020) doi:10.1214/19-BA1179. The IMIFA model conducts Bayesian nonparametric model-based clustering with factor analytic covariance structures without recourse to model selection criteria to choose the number of clusters or cluster-specific latent factors, mostly via efficient Gibbs updates. Model-specific diagnostic tools are also provided, as well as many options for plotting results, conducting posterior inference on parameters of interest, posterior predictive checking, and quantifying uncertainty.
New Features
get_IMIFA_resultsgains the arg.adapt, allowing automatic, post-hoc truncation of
redundant factors in cases where mcmc_IMIFA was called with adapt=FALSE only
(provided relevant parameters were stored) for the "IFA", "MIFA", "OMIFA", & "IMIFA" methods.
mgpControlgains theactive.critarg. to allow the criterion for determining the number of
active factors of Schiavon & Canale (2020) to be used (for "IFA" models only); this is available
for both mcmc_IMIFA with adapt=TRUE directly and the aforementioned post-hoc adaptation using
get_IMIFA_results, though the old criterion of Bhattacharya & Dunson (2011), active.crit="BD",
remains the default for all infinite factor models in each case. See documentation for details.
Improvements, Bug Fixes, & Miscellaneous Edits
- Models with
range.Q=0now work again for the"FA","MFA","OMFA", &"IMFA"methods.
_(with thanks to @abcoxyzide for flagging the issue)_
Show all changes in 2.2.0Hide the rest of the changes in 2.2.0
- The
mgpControlarg.delta0gnow also governsbeta.d1,beta.d2, &sigma.hyper, in addition toalpha.d1&alpha.d2. - Improved documentation & checks related to the
Ledermannbound + added various references to, & warnings for, the stricterQ <= floor((P - 1)/2)restriction throughout the package. - Minor fixes for
"MFA"/"MIFA"models whenmu0g,psi0g, &/ordelta0gisTRUE, particularly whenlength(range.G) > 1. - Minor speed-up to
G_priorDensitywhendiscountis non-zero. - Extensive edits to avoid overheads introduced in
matrixStats (>= 1.0.0)+ related minor speed-ups. - Now using newer
CITATIONcommands & updatedLicense: GPL (>= 3).
From inst/NEWS.md in the release
Install
Health
NOTECRAN incoming feasibilityr-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc
Maintainer: ‘Keefe Murphy <keefe.murphy@mu.ie>’ The BugReports field in DESCRIPTION has https://github.com/Keefe-Murphy/IMIFA which should likely be https://github.com/Keefe-Murphy/IMIFA/issues instead.
- NOTE11 OK, 2 NOTENow
- NOTE12 OK, 2 NOTE2026-03-10
Documentation
- Help pages
- 35includes a package overview page
- Examples that run
- 82%28 run in a plain check · 1 only when donttest examples are enabled (R CMD check --as-cran) · 5 hold no code
- Exported functions with examples
- 100%
- Documented parameters
- 92%
- Return-value docs
- 100%
- Help pages citing references
- 66%
Downloads
Repository
- PRs merged (all time)
- not measured
- Median days to close, 50 most recently updated closed issues
- 249
- Median days to close, 50 most recently updated closed PRs
- not measured
Stars over time
Forks over time
Releases over time
Issues over time
1 development-tooling and community-health practice detected across 1 family in the upstream repository
Checks run against github.com/keefe-murphy/imifa on 2026-10-18.
Dependencies
Installing IMIFA adds 11 packages (9 with compiled code, 22 MB of source tarballs). Heaviest: BH 14 MB, mclust 2.7 MB, Rcpp 1.8 MB.
Code & Tests
Datasets
People & History
Pick two releases to compare their code metrics.
- RR 4.6.0 released · 2026-04-24
- RR 4.5.0 released · 2025-04-11
- RR 4.4.0 released · 2024-04-24
- 2.2.0Latest
- RR 4.3.0 released · 2023-04-21
- 2.1.102022-12-20 · diff ↗
- 2.1.92022-08-15 · diff ↗
- RR 4.2.0 released · 2022-04-22
- 2.1.82021-12-19 · diff ↗
- 2.1.7
- 2.1.6
- RR 4.1.0 released · 2021-05-18
- 2.1.52021-01-05 · diff ↗
- 2.1.42020-11-19 · diff ↗
- 2.1.32020-05-12 · diff ↗
- RR 4.0.0 released · 2020-04-24
Show 13 earlier eventsHide 13 earlier events
- 2.1.22020-03-30 · diff ↗
- 2.1.12019-12-11 · diff ↗
- RR 3.6.0 released · 2019-04-26
- 2.1.0
- 2.0.02018-05-01 · diff ↗ ·
added 8 exports
IMIFA_news, bnpControl, mgpControl, mixfaControl, post_conf_mat, show_IMIFA_digit, show_digit, storeControl - RR 3.5.0 released · 2018-04-23
- 1.3.12017-07-07 · diff ↗
- 1.3.0
- 1.2.1
- 1.2.02017-05-09 · diff ↗ ·
removed 1 export
G_prioradded 6 exports
G_priorDensity, PGMM_dfree, Zsimilarity, gumbel_max, heat_legend, rDirichlet - RR 3.4.0 released · 2017-04-21
- 1.1.02017-02-05
- RR 3.3.0 released · 2016-05-03
Package metadata
- First published
- 2017-02-05
- Total releases
- 18 / 9 yrs
- License
- GPL (>= 3) OSI
- Minimum R
- ≥ 4.0.0
- Bundled data
- 1.7 MB / 3 files
- Download size
- 2.5 MB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("IMIFA")The package provides a citation file that builds its entry when R runs it. Run citation() to see it.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-21, which the citation names so these numbers can be found later. More on citing and the projects behind them.