K-means en un campo de fútbol
En el capítulo anterior usaste el conjunto de datos lineup para aprender clustering jerárquico; en este capítulo usarás los mismos datos para aprender k-means.
Como recordatorio, el data frame lineup contiene las posiciones de 12 jugadores al inicio de un partido de fútbol 6 contra 6.
Igual que antes, sabes que hay dos equipos en el campo, así que puedes realizar un análisis k-means usando k = 2 para determinar a qué equipo pertenece cada jugador.
Ten en cuenta que en la función kmeans() el valor de k se indica mediante el parámetro centers.
Este ejercicio forma parte del curso
Análisis de clústeres en R
Instrucciones del ejercicio
- Crea un modelo k-means llamado
model_km2para los datoslineupusando la funciónkmeans()concenters = 2. - Extrae el vector de asignaciones de clúster del modelo (
model_km2$cluster) y guárdalo en la variableclust_km2. - Añade las asignaciones de clúster como una columna
clusteral data framelineupy guarda el resultado en un nuevo data frame llamadolineup_km2. - Usa ggplot para representar las posiciones de cada jugador en el campo y coloréalas según su clúster.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Build a kmeans model
model_km2 <- kmeans(___, centers = ___)
# Extract the cluster assignment vector from the kmeans model
clust_km2 <- ___
# Create a new data frame appending the cluster assignment
lineup_km2 <- mutate(___, cluster = ___)
# Plot the positions of the players and color them using their cluster
ggplot(___, aes(x = ___, y = ___, color = factor(___))) +
geom_point()