# import data
data = read.csv("kmdata.txt")
# split data
Y = data[, 3]
data = data[, 1:2]
# plot without color
plot(data)
# plot with color
plot(data, col = Y + 1)
Color Plotted Data
# create kMeans model
model <- kmeans(data, centers = 3)
# plot data with clusters
plot(data, col = model$cluster + 1)
# plot clusters' centers
points(model$centers, col = 1:length(model$centers) + 1, pch = "+", cex = 2)
kMeans Clustering Plot
# required libraries
library(mixtools)
# create Gaussian Mixture Model
model <- mvnormalmixEM(data, k = 3, epsilon = 0.01)
# clusters
clusters = max.col(model$posterior)
# centers
centers = matrix(unlist(model$mu), byrow = TRUE, ncol = 2)
# plot data
plot(data, col = clusters + 1)
# plot centers
points(centers, col = 1:length(centers) + 1, pch = "+", cex = 2)
Gaussian Mixture Model Plot
<aside> 💡 (c) Τα Gaussian Mixture Models
</aside>