Mixture model selection via BIC {Compositional} | R Documentation |
Mixture model selection via BIC
Description
Mixture model selection via BIC.
Usage
bic.mixcompnorm(x, G, type = "alr", veo = FALSE, graph = TRUE)
Arguments
x |
A matrix with compositional data. |
G |
A numeric vector with the number of components, clusters, to be considered, e.g. 1:3. |
type |
The type of trasformation to be used, either the additive log-ratio ("alr"), the isometric log-ratio ("ilr") or the pivot coordinate ("pivot") transformation. |
veo |
Stands for "Variables exceed observations". If TRUE then if the number variablesin the model exceeds the number of observations, but the model is still fitted. |
graph |
A boolean variable, TRUE or FALSE specifying whether a graph should be drawn or not. |
Details
The alr or the ilr-transformation is applied to the compositional data first and then mixtures of multivariate Gaussian distributions are fitted. BIC is used to decide on the optimal model and number of components.
Value
A plot with the BIC of the best model for each number of components versus the number of components. A list including:
mod |
A message informing the user about the best model. |
BIC |
The BIC values for every possible model and number of components. |
optG |
The number of components with the highest BIC. |
optmodel |
The type of model corresponding to the highest BIC. |
Author(s)
Michail Tsagris.
R implementation and documentation: Michail Tsagris mtsagris@uoc.gr.
References
Ryan P. Browne, Aisha ElSherbiny and Paul D. McNicholas (2018). mixture: Mixture Models for Clustering and Classification. R package version 1.5.
Ryan P. Browne and Paul D. McNicholas (2014). Estimating Common Principal Components in High Dimensions. Advances in Data Analysis and Classification, 8(2), 217-226.
Aitchison J. (1986). The statistical analysis of compositional data. Chapman & Hall.
See Also
mix.compnorm, mix.compnorm.contour, rmixcomp, bic.alfamixnorm
Examples
x <- as.matrix( iris[, 1:4] )
x <- x/ rowSums(x)
bic.mixcompnorm(x, 1:3, type = "alr", graph = FALSE)
bic.mixcompnorm(x, 1:3, type = "ilr", graph = FALSE)