Skip to content

MoEClust

1.6.0Package record

Gaussian Parsimonious Clustering Models with Covariates and a Noise Component

1packages depend
5.3Kdownloads / year
–test coverage
13/13flavors OK

Overview

About

Clustering via parsimonious Gaussian Mixtures of Experts using the MoEClust models introduced by Murphy and Murphy (2020) doi:10.1007/s11634-019-00373-8. This package fits finite Gaussian mixture models with a formula interface for supplying gating and/or expert network covariates using a range of parsimonious covariance parameterisations from the GPCM family via the EM/CEM algorithm. Visualisation of the results of such models using generalised pairs plots and the inclusion of an additional noise component is also facilitated. A greedy forward stepwise search algorithm is provided for identifying the optimal model in terms of the number of components, the GPCM covariance parameterisation, and the subsets of gating/expert network covariates.

Changes in 1.6.0

New Features & Improvements

  • Various improvements to MoE_gpairs (also see additional Bug Fixes below):
  • _Significant_ fixes when there are expert covariates and diag.pars$show.dens=TRUE &/or

response.type="density" by properly using log average density instead of average log density.

  • Marginal densities when diag.pars$show.dens=TRUE are now always evaluated over evenly-spaced

grids, the size of which can now be modified via diag.pars$diag.grid (equal to 100, by default):

previously, the grids were formed using the observed values, which led to strange behaviour.

  • Added density.pars$dens.points=FALSE for overlaying points when response.type="density".
  • Various improvements in relation to subset args.:
  • data.ind & cov.ind can now be character strings / variable names (previously numeric indices only).
  • Added submat for showing only "upper"/"lower" triangular & "diagonal" plot panels.
  • When submat="all", the slowness of response.type="density" plots is now offset
Show all changes in 1.6.0Hide the rest of the changes in 1.6.0

by using densities pre-calculated from upper-triangular panels for lower-triangular panels.

  • MoE_Uncertainty gains two new arguments:
  • col: default of "cluster" colours according to cluster-membership, but

old behaviour of highlighting uncertain observations can be recovered via col="uncertain".

  • rug1d (TRUE, by default) for use with univariate models, which puts

the actual observed values along the x axis when type="barplot".

  • MoE_control gains new init.z option "soft.random": the "random" option has been

renamed to "random.hard", but init.z="random" will work as before due to partial matching.

  • tau0 can now always be supplied as a vector (previously allowed only with gating covariates & noise.gate=TRUE).
  • Speed improvements by replacing matrixStats::rowLogSumExps with new logsumexp & softmax

functions from mclust (w/ mclust (>= 6.1) now ensured in Imports:) where appropriate throughout.

  • stats::lm.wfit-related speed-ups from previous update now extend to MoE_gpairs with scatter.type="lm".
  • Further related minor speed-ups for models with G == 0 and G == 1.

Bug Fixes & Miscellaneous Edits

  • Additional minor fixes to MoE_gpairs:
  • Subsetting is now allowed to result in only one single panel.
  • Additional edits in relation to diag.pars$show.dens:
  • show.dens=TRUE now works properly when subset$data.ind is used.
  • The expert.covar arg. is no longer invoked when show.dens=TRUE.
  • Fixed (i.e. increased) height of diagonal panels when show.dens=TRUE &/or show.hist=TRUE.
  • Additional edits in relation to barcode panels:
  • Partially fixed dimensions of vertical panels when conditional="barcode"

(caution still advised when using RStudio's "Plots" pane if non-square).

  • Barcode panels now have colour throughout (previously only MAP-related panels),

with related minor fixes when barcode.pars$use.points=TRUE.

  • Minor label-related adjustments:
  • Outer labels of mosaic panels are now correct when diagonal=FALSE.
  • Cosmetic adjustments to default orientation of labels matching categorical variable levels.
  • density.pars$show.labels="mixed" now works properly.
  • Many documentation improvements & clarifications.
  • Minor fixes in relation to MoECriterion objects and MoE_plotCrit:
  • Bug fix in relation to non-finite values for direct plots of MoECriterion objects, e.g. plot(x$BIC).
  • crit="loglik" formerly erroneously produced the same plot as crit="aic".
  • New crit options "df" & "iters" added.
  • Fixed bugs when a 'soft' z.list is supplied when algo != "EM".
  • MoE_estep & MoE_cstep now work when there is only one observation, with a related

fix to predict.MoEClust(..., use.y=TRUE) when predicting only one observation.

  • Fixed extremely rare bug in MoE_clust & associated predict, fitted, & residuals methods

when algo="CEM" and a model has only one observation/prediction assigned to its noise component.

  • Fixed minor bug when as.Mclust is used with expert.covar=TRUE for multivariate models

with expert network covariates and subsequently used to produce density-related plots.

  • Additional minor documentation improvements.

From inst/NEWS.md in the release

Install

Health

CRAN checks
13OK
Slowest check: 3.5 min · r-oldrel-windows-x86_64
Status changes
  • OK13 OK2026-09-08
  • ERROR12 OK, 1 ERROR2026-09-07
  • OK13 OK2026-08-05
  • NOTE12 OK, 1 NOTE2026-08-01
  • OK14 OK2026-04-10
Show 2 earlier changesHide 2 earlier changes
  • ERROR13 OK, 1 ERROR2026-04-09
  • OK14 OK2026-03-10
Advisories

none known

Documentation

In release 1.6.0
READMEYes · 521 wordsVignettesYes · 1 · dynamicNEWSYes · 100% structured · mentions 1.6.0Citation fileYes · cites a publicationWebsitenot declared in DESCRIPTION
Help pages
34includes a package overview page
Examples that run
76%26 run in a plain check · 6 only when donttest examples are enabled (R CMD check --as-cran) · 2 hold no code
Exported functions with examples
100%
Documented parameters
84%
Return-value docs
100%
Help pages citing references
53%
Vignettes (1)

Downloads

5.3K
CRAN downloads in the past year
Rank #6,999 · ~14/day · ~439/mo
Daily download trend is not available in this view yet.
54630 days
1.2K90 days
5.3K1 year
Compare downloads with other packages →
Also on123 r2u8 autocran167 c2d4u

Repository

7Stars
0Forks
0Open issues
0Open PRs
18Releases
115Commits
2Commit identities
model-based-clusteringgaussian-mixture-modelsmixture-of-experts
License file reads as GPL-3.0 · 115 commits · Last activity 2025-03-05 · 0% stars, 30d
Responsiveness
How these are sampled
PRs merged (all time)
not measured
Median days to close, 50 most recently updated closed issues
10
Median days to close, 50 most recently updated closed PRs
not measured

Stars over time

2023-02-13 · 62026-07-07 · 7
PracticesBeta

Checks run against github.com/keefe-murphy/moeclust on 2026-10-11.

No development-tooling practices detected in the upstream repository.

How this is detected·Detection ruleset v3 (2026-09-26)

Dependencies

Declared dependencies
9 external dependencies (excludes base and recommended)

Installing MoEClust adds 10 packages (8 with compiled code, 24 MB of source tarballs). Heaviest: BH 14 MB, mclust 2.7 MB, colorspace 2.0 MB.

Depends (1)
R >= 4.0.0
Imports (6)
LinkingTo (0)
none
Enhances (0)
none
Reverse dependencies
1direct
0indirect
Imports 1
Depends, Imports or LinkingTo, most downloaded first

Datasets

People & History

People (2)
Author, Maintainer since 1.0.0 (2017)
Releases (18)

Pick two releases to compare their code metrics.

  • R
    R 4.6.0 released · 2026-04-24
  • R
    R 4.5.0 released · 2025-04-11
  • 1.6.0Latest
    record
    2025-03-05 · current release · diff ↗
  • R
    R 4.4.0 released · 2024-04-24
  • 1.5.2
    record
    2023-12-11 · diff ↗ ·
    added 1 export
    FARI
  • R
    R 4.3.0 released · 2023-04-21
  • 1.5.1
    record
    2022-12-20 · diff ↗ ·
    added 2 exports
    MoE_AvePP, MoE_Similarity
  • R
    R 4.2.0 released · 2022-04-22
  • 1.5.0
    record
    2022-03-28 · diff ↗ ·
    added 1 export
    MoE_entropy
  • 1.4.2
    record
    2021-12-20 · diff ↗
  • 1.4.1
    record
    2021-10-12 · diff ↗
  • 1.4.0
    record
    2021-06-22 · diff ↗ ·
    removed 1 export
    as.Mclust
  • R
    R 4.1.0 released · 2021-05-18
  • 1.3.3
    record
    2021-01-06 · diff ↗
  • 1.3.2
    record
    2020-11-18 · diff ↗
  • 1.3.1
    record
    2020-05-12 · diff ↗
Show 12 earlier eventsHide 12 earlier events
  • R
    R 4.0.0 released · 2020-04-24
  • 1.3.0
    record
    2020-03-31 · diff ↗
  • 1.2.4
    record
    2019-12-11 · diff ↗
  • 1.2.3
    record
    2019-07-31 · diff ↗ ·
    added 1 export
    MoE_stepwise
  • 1.2.2
    record
    2019-05-15 · diff ↗
  • R
    R 3.6.0 released · 2019-04-26
  • 1.2.1
    record
    2018-12-11 · diff ↗ ·
    added 1 export
    MoE_cstep
  • 1.2.0
    record
    2018-08-24 · diff ↗ ·
    removed 2 exports
    MoE_aitken, MoE_qclass
    added 5 exports
    MoE_Uncertainty, MoE_news, aitken, force_posiDiag, quant_clust
  • R
    R 3.5.0 released · 2018-04-23
  • 1.1.0
    record
    2018-02-06 · diff ↗ ·
    added 1 export
    expert_covar
  • 1.0.0
    record
    2017-11-28
  • R
    R 3.4.0 released · 2017-04-21

Package metadata

First published
2017-11-28
Total releases
18 / 9 yrs
License
GPL (>= 3) OSI
Minimum R
≥ 4.0.0
Bundled data
4.8 KB / 2 files
Download size
1.4 MB

Cite

Cite this package

Run in R for the authors' preferred citation:

citation("MoEClust")

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.

APA

Balamuta, J. J. (2026). R Observatory: Metrics for MoEClust version 1.6.0 [Data set]. HJJB, LLC. Data release v2026-10-18. https://doi.org/10.5281/zenodo.21843040

From data release v2026-10-18, which the citation names so these numbers can be found later. More on citing and the projects behind them.

Report a problem with this page →

Privacy choices

These apply to this browser and are stored on this device only. Nothing about your choice is sent to us.

Read the privacy policy