Contexto

En este caso de estudio se analiza un conjunto de datos simulado de deportistas de nivel superior. El propósito es identificar perfiles deportivos a partir de variables relacionadas con la condición física, el desempeño atlético, los aspectos mentales y el rendimiento académico.

Para ello, se consideran variables como experiencia deportiva, horas de entrenamiento, resistencia, fuerza, velocidad, agilidad, concentración, disciplina, motivación, manejo del estrés, promedio académico y rendimiento competitivo. Debido a que no se cuenta con una variable dependiente, se emplea un enfoque de aprendizaje no supervisado mediante K-Means.

Aquí la descripción específica de las variables de interés:

Los datos cumplen con los requisitos generales para modelos de clustering, sin embargo se transforman los datos atípicos y correlacionados para mejorar eficiencia en la construcción del modelo.

Los datos se encuentran en https://raw.githubusercontent.com/rpizarrog/Libro-Aprendizaje-Automatico.-Casos-de-Estudio-con-R-y-Python/refs/heads/main/datos/datos_deportistas_clustering.csv .

El caso de estudio se puede ver en el portal de rpubs.com en https://rpubs.com/rpizarrog/1446726 .

Las funciones utilizadas se encuentran en github.com en https://raw.githubusercontent.com/rpizarrog/Libro-Aprendizaje-Automatico.-Casos-de-Estudio-con-R-y-Python/refs/heads/main/R%20MarkDown/funciones/funciones%20para%20K-Means.R .

Objetivo

Identificar grupos de deportistas con características similares a partir de variables físico-atléticas, mentales y académicas, utilizando el modelo de clustering K-Means. El propósito es reconocer perfiles deportivos que permitan diferenciar clases de deportistas tentativamente novatos, intermedios, expertos y de alto rendimiento.

Descripción

Cargar librerías

Cargar Librerias

  library(readr)

  library(ggplot2)
  library(patchwork)

Cargar funciones

# url <- "../funciones/funciones para K-Means.R" # local

url <- "https://raw.githubusercontent.com/rpizarrog/Libro-Aprendizaje-Automatico.-Casos-de-Estudio-con-R-y-Python/refs/heads/main/R%20MarkDown/funciones/funciones%20para%20K-Means.R"
source(url)

Semilla

set.seed(2026)

Cargar datos

Se cargan los registros de deportistas con la función f_cargar_datos(url).

# url <- "../datos/datos_mil_estudiantes_k-means.csv" # local
url <- "https://raw.githubusercontent.com/rpizarrog/Libro-Aprendizaje-Automatico.-Casos-de-Estudio-con-R-y-Python/refs/heads/main/datos/datos_deportistas_clustering.csv" # WEB
datos <- f_cargar_datos(url)

Estadísticos descriptivos

Desarrollo

Es recomendable detectar valores extremos outliers, analizar correlaciones entre variables físico-atléticas y estandarizar los datos para evitar que una variable domine el cálculo de distancias.

Transformar valores atípicos

Transformar valores atípicos por las medianas de cada variable.

Transformar variables correlacionadas

Modificar las variables correlacionadas en una sola mediante le promedio de los valores de las variables correlacionadas.

\[ \sum {vars_{cor}}/n \]

Estandarización de datos

Se estandarizan todas la variables numéricas y se dejan en un conjunto de datos llamado datos_estandarizados.

Contruir modelo K-Means

Se construye el modelo K-Means con la función con los datos estandarizados. ## Clústeres y centroides

Se observan los clusteres y los centroides

Dispersión de pares de variables

Se manda llamar la función f_dispersion_variables_clusters() y se observan las dispersiones de pares de variables identificando los grupso formados.

Diagramas de cajas

Se manda llamar la función f_diagramas_cajas() y se observan los diagramas de cajas que ayudan a identificar de manera más amigable los grupos y se observan algunas incidencias:

Interpretación del caso de estudio