• Saltar a la navegación principal
  • Saltar al contenido principal
Logo Codificando Bits

Codificando Bits

  • Academia
    • Rutas
    • Cursos
    • Proyectos
    • Tutoriales
  • Acceder
  • Suscribirse

3 – Detección y manejo de valores extremos

Lección 3 del curso SQL Nivel Avanzado.

En la lección anterior vimos un conjunto de herramientas de SQL para realizar la detección y el manejo de datos faltantes en una base de datos.

En esta lección veremos cómo usar SQL para implementar técnicas básicas de detección y manejo de valores extremos (u “outliers”) en variables tanto numéricas como categóricas de una tabla de datos.

Comencemos en primer lugar viendo cómo realizar la detección de valores extremos en variables numéricas:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Como acabamos de ver, generalmente el método más recomendado para llevar a cabo la detección de “outliers” en variables numéricas es el método de Tukey (el cual vimos en detalle en la lección 10 del curso Series de Tiempo: pre-procesamiento).

La idea de este método consiste en calcular el rango intercuartiles de la variable numérica y a partir de dicho rango calcular los límites superior e inferior por fuera de los cuales tendremos los valores extremos.

Y para implementar este método en SQL hemos usado nuevamente las “Common Table Expressions” (o CTEs, que vimos en detalle en la lección 1 de este curso: Transformación de Datos con SQL) que nos permiten calcular los cuartiles 1 y 3 de cada variable numérica.

Y luego, con esta información podemos usar la sentencia CASE para etiquetar los valores extremos.

Habiendo realizado la detección de estos valores extremos, veamos ahora cómo realizar su manejo:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

En este caso el manejo de valores extremos consiste en etiquetar los “outliers” detectados como valores faltantes y luego implementar alguna de las técnicas de manejo de datos faltantes vistas en la lección anterior.

Sin embargo, en este ejemplo hemos usado un enfoque ligeramente diferente: en lugar de detectar y posteriormente realizar el manejo de estos datos faltantes lo que hemos hecho ha sido simplemente usar los umbrales superior e inferior (obtenidos durante la detección) para preservar únicamente los valores numéricos dentro de esos límites (y por tanto, eliminando de esta forma los valores extremos).

Al igual que en el manejo de datos faltantes que vimos en la lección anterior, en este caso, debido a las limitaciones que nos ofrece SQL, sólo resulta viable usar técnicas “simples” de manejo de valores extremos (como la eliminación o la imputación por la media o incluso el recorte).

Así que, para terminar esta lección, sólo nos resta ver cómo realizar la detección y el manejo de valores extremos en variables categóricas:

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Tanto la detección como el manejo de valores extremos en variables categóricas sigue una lógica muy similar a la que vimos en la primera parte de esta lección para el caso de las variables numéricas.

Sin embargo, en el caso de las variables categóricas no siempre un valor extremos es aquella categoría menos frecuente. Por ejemplo, en un problema de detección de anomalías, la categoría menos frecuente es aquella que tiene información más relevante para nuestro problema así que no conviene eliminarla.

En todo caso, si decidimos realizar la detección y manejo de este tipo de “outliers” podemos seguir usando herramientas como las CTEs y técnicas de filtrado usando la sentencia WHERE vista en el curso SQL Nivel Básico para lograr el resultado deseado.

Así que en este punto lo único que nos resta para culminar este primer módulo del curso es ver cómo usar SQL para realizar la detección y el manejo de registros duplicados, que será precisamente el tema de la próxima lección.

Todas las lecciones del curso SQL Nivel Avanzado

© Codificando Bits, LLC | Blog | Contacto | Servicios | Acerca de | Políticas

¿Has olvidado la contraseña?
¿Has perdido tu contraseña? Por favor, introduce tu nombre de usuario o dirección de correo electrónico. Recibirás por correo electrónico un enlace para crear una nueva contraseña.
body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb }