forked from RLadiesCuerna/meetup_agosto_2024
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTaller: K-Means en R.R
80 lines (56 loc) · 2.59 KB
/
Taller: K-Means en R.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
## Taller: K-Means en R
## Dra. Nelva Nely Almanza Ortega
## Ladies R
## Cuernavaca, Morelos
## ======================================================================
## ======================================================================
## 1. Importar un conjunto de datos
dframe <- data.frame(age = c(18, 21, 22, 24, 26, 26, 27, 30, 31, 35, 39, 40, 41, 42, 44, 46, 47, 48, 49, 54),
spend = c(10, 11, 22, 15, 12, 13, 14, 33, 39, 37, 44, 27, 29, 20, 28, 21, 30, 31, 23, 24)
)
## ======================================================================
## ======================================================================
## 2. Análisis de la estaística básica del conjunto de datos
summary(dframe)
## ======================================================================
## ======================================================================
## 3. Análisis de la distribución del conjunto de datos
library(ggplot2)
ggplot(dframe, aes(x = age, y = spend)) + geom_point()
## ======================================================================
## ======================================================================
## 4. Generar particiones de datos con el algoritmo de agrupamiento K-Means
##arguments:
## función kmeans()
## -dframe: dataset used to run the algorithm
## -k: Number of clusters
k <- 3
out_kmeans <- kmeans(dframe, k)
## ======================================================================
## ======================================================================
## 5. Graficar las particiones de datos generadas con el algoritmo de agrupamiento K-Means
library(ggplot2)
dframe <- cbind(dframe,clusters=c(out_kmeans$cluster))
## Método 1
ggplot(data = dframe, aes(x = age, y = spend, color = factor(clusters))) + geom_point()
## Método 2
plot(dframe[1:2], col = dframe$clusters)
points(out_kmeans$centers, col = 1:5, pch = 8)
## ======================================================================
## ======================================================================
## 6. K-Means dinámico
set.seed(2345)
library(animation)
iris
kmeans.ani(iris[2:3], 4)
## ======================================================================
## ======================================================================
## 7. Ejercicios con benckmark
## ------------------------------------
## REPOSITORIO
## https://cs.joensuu.fi/sipu/datasets/
## ------------------------------------
# 1. Cargar un conjunto de datos
# variable <- read.csv("Nombre_del_archivo.csv")
# 2. Particionar el conjunto de datos con el algoritmo K-Means
# 3. Visualizar el resultado de las particiones