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

Codificando Bits

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

1 – Transformación de datos

Lección 1 del curso SQL Nivel Avanzado.

En este primer módulo del curso veremos diferentes herramientas de SQL que nos permiten llevar a cabo lo que se conoce como el pre-procesamiento y la limpieza de datos.

Estas dos fases son esenciales en cualquier proyecto de Ciencia de Datos y Machine Learning pues nos permiten preparar los datos para que puedan ser posteriormente analizados o llevados, por ejemplo, a un modelo de Machine Learning.

Y son dos fases que siempre estarán presentes pues usualmente los datos pueden contener valores faltantes o valores extremos, o la escala puede no ser la adecuada, o incluso podemos tener registros duplicados o, en el caso de sets de datos que contienen texto, las cadenas de caracteres pueden no estar “normalizadas”.

Y en esta primera lección específicamente veremos una primera fase de pre-procesamiento de los datos: la transformación. En el caso de las variables numéricas esta transformación permite realizar lo que se conoce como el escalamiento de los datos, mientras que en el caso de variables tipo texto (o “strings”) permite garantizar que las cadenas de caracteres estarán ajustadas a un formato pre-definido o estándar.

Comencemos viendo entonces cómo realizar la transformación de datos numéricos, es decir cómo usar SQL para realizar el escalamiento de estos datos:

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.

Muy bien, acabamos de ver cómo realizar el escalamiento por mínimo y máximo y la estandarización de variables numéricas usando una nueva herramienta: las “Common Table Expressions” (o CTEs).

Estas expresiones son como el equivalente de las funciones en Python. Es decir que nos permiten crear una porción de código SQL que define algún tipo de operación sobre la tabla de datos y luego “llamar” esta CTE desde la consulta que estemos realizando para retornar los valores necesarios (que en este caso corresponden a los máximos, mínimos, promedios y desviaciones estándar de las columnas que estamos escalando).

Veamos ahora las transformaciones que más comúnmente podemos aplicar a cadenas de caracteres (o “strings”) usando SQL. Comencemos con un primer conjunto de operaciones básicas:

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 acabamos de ver cómo usar las funciones TRIM(), LOWER(), UPPER() y SPLIT_PART() para realizar una limpieza básica de “strings”. Con esto hemos logrado eliminar espacios en blanco al inicio o al final del “string”, convertir el texto a minúsculas o mayúsculas o separar el texto en palabras.

Si queremos realizar operaciones más avanzadas de limpieza y normalización de “strings” tendremos que recurrir a las expresiones regulares.​

Veamos entonces cómo realizar esta normalización avanzada usando esta herramienta de SQL:

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.

A partir de este último ejemplo podemos concluir que una expresión regular es una porción de código que se encarga de buscar un patrón específico dentro del “string” y de realizar el reemplazo por el sub-string que especifiquemos.

Así que al usar la función REGEXP_REPLACE de SQL podemos, por ejemplo, eliminar dígitos o caracteres no alfanuméricos presentes en un “string”. De igual forma podremos eliminar el exceso de espacios en blanco entre pares de palabras o realizar el reemplazo de palabras dentro del texto.

Así que con lo visto en esta lección ya tenemos las herramientas de transformación de datos más usadas al momento de realizar el pre-procesamiento de variables numéricas o variables tipo texto.

En la próxima lección veremos otro conjunto de herramientas en SQL que nos permitirán realizar la detección y el manejo de datos faltantes.

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 }