Ось сценарій використання моделі суміші за допомогою mcluster.
X <- c(rnorm(200, 10, 3), rnorm(200, 25,3), rnorm(200,35,3), rnorm(200,65, 3), rnorm(200,80,5))
Y <- c(rnorm(1000, 30, 2))
plot(X,Y, ylim = c(10, 60), pch = 19, col = "gray40")
require(mclust)
xyMclust <- Mclust(data.frame (X,Y))
plot(xyMclust)

У ситуації, коли існує менше 5 кластерів:
X1 <- c(rnorm(200, 10, 3), rnorm(200, 25,3), rnorm(200,35,3), rnorm(200,80,5))
Y1 <- c(rnorm(800, 30, 2))
xyMclust <- Mclust(data.frame (X1,Y1))
plot(xyMclust)

xyMclust4 <- Mclust(data.frame (X1,Y1), G=3)
plot(xyMclust4)

У цьому випадку ми вміщуємо 3 кластери. Що робити, якщо ми помістимо 5 кластерів?
xyMclust4 <- Mclust(data.frame (X1,Y1), G=5)
plot(xyMclust4)
Це може змусити зробити 5 кластерів.

Також введемо кілька випадкових шумів:
X2 <- c(rnorm(200, 10, 3), rnorm(200, 25,3), rnorm(200,35,3), rnorm(200,80,5), runif(50,1,100 ))
Y2 <- c(rnorm(850, 30, 2))
xyMclust1 <- Mclust(data.frame (X2,Y2))
plot(xyMclust1)
mclustдозволяє кластеризацію на основі моделей із шумом, а саме зовнішні спостереження, які не належать до жодного кластеру. mclustдозволяє задати попередній розподіл для регуляризації відповідності даним. У priorControlmclust передбачена функція для визначення попереднього та його параметрів. Коли він викликається зі своїми за замовчуванням, він викликає іншу функцію, defaultPriorяка називається, яка може слугувати шаблоном для визначення альтернативних пріорів. Щоб включити шум у моделювання, початкові здогадки про спостереження за шумом повинні бути надані через компонент шуму аргументу ініціалізації в Mclustабо mclustBIC.

Іншою альтернативою було б використання mixtools пакету, який дозволяє вказати середнє значення та сигму для кожного компонента.
X2 <- c(rnorm(200, 10, 3), rnorm(200, 25,3), rnorm(200,35,3),
rnorm(200,80,5), rpois(50,30))
Y2 <- c(rnorm(800, 30, 2), rpois(50,30))
df <- cbind (X2, Y2)
require(mixtools)
out <- mvnormalmixEM(df, lambda = NULL, mu = NULL, sigma = NULL,
k = 5,arbmean = TRUE, arbvar = TRUE, epsilon = 1e-08, maxit = 10000, verb = FALSE)
plot(out, density = TRUE, alpha = c(0.01, 0.05, 0.10, 0.12, 0.15), marginal = TRUE)
