# computeEM: Expectation-Maximization clustering In RclusTool: Graphical Toolbox for Clustering and Classification of Data Frames

## Description

Perform Expectation-Maximization clustering, dealing with the number of clusters K, automatically or not.

## Usage

 ```1 2 3 4 5 6 7 8``` ```computeEM( x, K = 0, K.max = 20, kmeans.variance.min = 0.95, graph = F, Mclust.options = list() ) ```

## Arguments

 `x` matrix of raw data (point by line). `K` number of clusters. If K=0 (default), this number is automatically computed thanks to the Elbow method. `K.max` maximal number of clusters (K.Max=20 by default). `kmeans.variance.min` elbow method cumulative explained variance > criteria to stop K-search. `graph` boolean: if TRUE, figures for total of within-class inertia and explained variance are plotted. `Mclust.options` list of default parameters values for the function Mclust.

## Details

computeEM performs Expectation-Maximization clustering, dealing with the number of clusters K, automatically or not

## Value

res.EM results obtained from Mclust algorithm.

`computeUnSupervised`, `computeKmeans`
 ``` 1 2 3 4 5 6 7 8 9 10``` ```dat <- rbind(matrix(rnorm(100, mean = 0, sd = 0.3), ncol = 2), matrix(rnorm(100, mean = 2, sd = 0.3), ncol = 2), matrix(rnorm(100, mean = 4, sd = 0.3), ncol = 2)) tf <- tempfile() write.table(dat, tf, sep=",", dec=".") x <- importSample(file.features=tf, dir.save=tempdir()) res.em <- computeEM(x\$features\$initial\$x, K=0, graph=TRUE) plot(dat[,1], dat[,2], type = "p", xlab = "x", ylab = "y", col = res.em\$classification, main = "EM clustering") ```