MIN y MAX: Funciones de agregación esenciales para ciencia de datos
Introducción
En la ciencia de datos, las funciones de agregación son herramientas fundamentales que nos permiten obtener resúmenes estadísticos a partir de conjuntos de datos. Entre estas funciones, MIN y MAX se destacan por su sencillez y versatilidad. Estas funciones no solo facilitan el análisis exploratorio básico, sino que también son esenciales para preparar los datasets necesarios para modelos avanzados de machine learning (ML). A continuación, exploraremos cómo usar estas funciones en SQL, mostrando ejemplos prácticos y advirtiendo sobre algunas trampas comunes a evitar.
Explicación principal con ejemplos
Definición y uso básico
La función MIN se utiliza para obtener el valor más pequeño de una columna específica, mientras que la función MAX devuelve el valor más grande. Estos valores son útiles en diversos escenarios, como identificar límites extremos en un conjunto de datos o normalizar características.
-- Ejemplo básico: encontrar los mínimos y máximos de la columna 'edad'
SELECT
MIN(edad) AS edad_minima,
MAX(edad) AS edad_maxima
FROM
usuarios;
Usando MIN y MAX con agrupamientos
Las funciones MIN y MAX también pueden ser utilizadas en combinación con la cláusula GROUP BY. Esto nos permite obtener resúmenes estadísticos para subconjuntos de datos.
-- Ejemplo: encontrar el mínimo y máximo 'edad' por 'ciudad'
SELECT
ciudad,
MIN(edad) AS edad_minima,
MAX(edad) AS edad_maxima
FROM
usuarios
GROUP BY
ciudad;
Usando MIN y MAX con condicionales
Además de su uso directo en consultas básicas, estas funciones pueden ser utilizadas junto a otras características para crear expresiones más complejas.
-- Ejemplo: encontrar el mínimo 'edad' mayor que 18 por 'ciudad'
SELECT
ciudad,
MIN(CASE WHEN edad > 18 THEN edad ELSE NULL END) AS edad_minima_mayor_que_18
FROM
usuarios
GROUP BY
ciudad;
Errores típicos / trampas
Aunque MIN y MAX son funciones sencillas, hay algunas trampas comunes que deben evitarse:
1. Ignorar valores NULL
Cuando se usan MIN o MAX, los valores NULL no se consideran en el cálculo. Si una columna tiene muchos valores NULL, podría distorsionar los resultados.
-- Ejemplo: ignorando valores NULL
SELECT
MIN(edad) AS edad_minima,
MAX(edad) AS edad_maxima
FROM
usuarios;
2. Usar en el contexto incorrecto
MIN y MAX no siempre son las funciones más apropiadas para todos los escenarios. Por ejemplo, en problemas de optimización, podría ser necesario usar otras funciones como AVG.
-- Ejemplo: error al usar MIN en lugar de AVG
SELECT
ciudad,
MIN(salario) AS salario_minimo
FROM
empleados
GROUP BY
ciudad;
3. Confusión entre MIN y MAX
A veces, se confunden estas funciones con otras que también proporcionan valores mínimos o máximos, como LEAST (mínimo de una lista) o GREATEST (máximo de una lista).
-- Ejemplo: uso incorrecto de LEAST en lugar de MIN
SELECT
ciudad,
LEAST(salario, 10000) AS salario_minimo
FROM
empleados;
Checklist accionable
A continuación, se presentan algunos puntos clave para asegurar el uso correcto de MIN y MAX en tus consultas SQL:
- Verifica que no haya valores NULL: Asegúrate de manejar adecuadamente los valores NULL si son relevantes para tu análisis.
- Usa correctamente
GROUP BY: Al agrupar datos, asegúrate de usarMINyMAXen el contexto correcto para obtener resúmenes precisos. - Evita confusión con otras funciones: Usa
LEAST,GREATEST, o cualquier otra función solo cuando sean realmente necesarias. - Comprueba los resultados: Verifica que las consultas devuelven lo esperado y ajusta según sea necesario.
- Documenta tus consultas: Mantén tus consultas claras y documentadas para facilitar su mantenimiento y comprensión.
Cierre con "Siguientes pasos"
Siguientes pasos
Ahora que has aprendido sobre MIN y MAX, puedes continuar profundizando en las siguientes áreas:
- Exploración adicional: Prueba a combinar
MINyMAXcon otras funciones de agregación para obtener una visión más completa del conjunto de datos. - Práctica: Crea algunos ejercicios propios utilizando
MINyMAXen combinación con agrupamientos y condicionales. - Aplicación en ML: Prepara datasets utilizando
MINyMAXpara alimentar modelos de machine learning.
¡Esperamos que esta guía te haya ayudado a mejorar tus habilidades en SQL para ciencia de datos!