PseudoVoigtMixt

PseudoVoigtMixt implements multivariate pseudo-Voigt mixture models for model-based clustering and outlier detection. Within each cluster, the model combines multivariate Gaussian and Cauchy distributions to accommodate heavy-tailed observations and decompose the data into high-density regions and a low-density remainder, where outliers are more likely to occur.

Installation

The package is currently under development and is being prepared for CRAN submission.

Example

Generate data from a two-component multivariate pseudo-Voigt mixture model:

library(PseudoVoigtMixt)

sim <- rmpvm(
  n = 100,
  pi = c(0.5, 0.5),
  alpha = c(0.8, 0.8),
  mu = list(
    c(0, 0),
    c(4, 4)
  ),
  Sigma = list(
    diag(2),
    diag(2)
  ),
  Gamma = list(
    diag(2),
    diag(2)
  ),
  seed = 123
)

Fit MPVM models and select the number of components using BIC:

fit <- MPVmixt(
  x = sim$data,
  G_range = 1:2,
  max_iter = 20,
  nstart = 20,
  seed = 123
)

fit$best$G
fit$bic