Learn R Programming

flexmix (version 1.1-2)

FLXmclust: FlexMix Clustering Demo Driver

Description

This is a demo driver for flexmix implementing model-based clustering of Gaussian data.

Usage

FLXmclust(formula = . ~ ., diagonal = TRUE)

Arguments

formula
A formula which is interpreted relative to the formula specified in the call to flexmix using update.formula. Only the left-hand side (respons
diagonal
If TRUE, then the covariance matrix of the components is restricted to diagonal matrices.

Value

  • FLXmclust returns an object of class FLXmodel.

Details

This is mostly meant as a demo for FlexMix driver programming, you should also look at package mclust for real applications.

References

Friedrich Leisch. FlexMix: A general framework for finite mixture models and latent class regression in R. Journal of Statistical Software, 11(8), 2004. http://www.jstatsoft.org/v11/i08/

See Also

flexmix

Examples

Run this code
data(Nclus)

require("MASS")
eqscplot(Nclus)

## This model is wrong (one component has a non-diagonal cov matrix)
ex1 <- flexmix(Nclus~1, k=4, model=FLXmclust())
print(ex1)
plotEll(ex1, Nclus)

## True model, wrong number of components
ex2 <- flexmix(Nclus~1, k=6, model=FLXmclust(diag=FALSE))  
print(ex2)

plotEll(ex2, Nclus)

## Get parameters of first component
parameters(ex2, component=1)

## Have a look at the posterior probabilies of 10 random observations
ok <- sample(1:nrow(Nclus), 10)
p  <- posterior(ex2)[ok,]
p

## The following two should be the same
max.col(p)
cluster(ex2)[ok]

<testonly>stopifnot(all.equal(max.col(p), cluster(ex2)[ok]))</testonly>

Run the code above in your browser using DataLab