Cuando trabajamos con datos que tienen diferentes valores y unidades de medida, puede ser complicado compararlos directamente. ¿Cómo comparamos kilogramos con metros, o altitud con tiempo? La solución a este problema es la escala de datos, que nos permite transformar los valores originales en nuevos valores que sean más fáciles de comparar.
Como en la lección anterior de regresión múltiple, tenemos un conjunto de datos con tres columnas: Presupuesto (EUR), Clics y Conversiones. Echemos un vistazo a una parte de estos datos:
Presupuesto (EUR) | Clics | Conversiones |
---|---|---|
5000 | 12000 | 450 |
3500 | 8000 | 320 |
6000 | 15000 | 580 |
4500 | 10000 | 390 |
5500 | 11000 | 420 |
4200 | 9200 | 350 |
6800 | 16000 | 620 |
3200 | 7500 | 290 |
4900 | 10500 | 400 |
3800 | 8200 | 315 |
6100 | 14500 | 560 |
4300 | 9500 | 365 |
4700 | 11000 | 420 |
6900 | 15700 | 605 |
3300 | 7600 | 295 |
5000 | 10800 | 410 |
3600 | 8200 | 315 |
5200 | 12600 | 480 |
4400 | 8400 | 375 |
5600 | 14400 | 430 |
6100 | 9000 | 565 |
4100 | 7500 | 345 |
3400 | 9000 | 290 |
5000 | 7500 | 435 |
4800 | 11300 | 410 |
6700 | 10700 | 590 |
3500 | 15200 | 310 |
5300 | 8000 | 445 |
5100 | 11600 | 475 |
3700 | 12400 | 320 |
5900 | 8400 | 550 |
Podrás comprobar que la columna de "Presupuesto (EUR)" tiene valores como 5000 y la columna de "Clics" tiene valores como 12000. Estos valores son difíciles de comparar directamente debido a sus diferencias en magnitud.
¿Qué es la Estandarización?
Para resolver este problema, podemos utilizar un método llamado estandarización, que nos permite transformar los datos para que tengan una media de 0 y una desviación estándar de 1. Esto hace que los datos sean más comparables. La fórmula de estandarización es:
z = (x - u) / s
Donde:
- z es el nuevo valor escalado.
- x es el valor original.
- u es la media de la columna.
- s es la desviación estándar de la columna.
Ejemplo de Estandarización
Supongamos que queremos estandarizar el valor 5000 en la columna de "Presupuesto (EUR)". Primero, calculamos la media y la desviación estándar de esa columna. Supongamos que la media (u) es 4500 y la desviación estándar (s) es 1000. Aplicando la fórmula:
z = (5000 - 4500) / 1000 = 0.5
Entonces, el valor estandarizado de 5000 es 0.5.
Del mismo modo, si queremos estandarizar el valor 12000 en la columna de "Clics", aplicamos la fórmula:
z = (12000 - media_de_clics) / desviacion_estandar_de_clics
Estandarización en Python
No es necesario realizar este cálculo manualmente para cada valor. En Python, puedes utilizar la librería scikit-learn para realizar la estandarización de manera eficiente. Aquí hay un ejemplo de cómo hacerlo:
# Importar la clase StandardScaler desde sklearn.preprocessing from sklearn.preprocessing import StandardScaler # Crear un objeto Scaler scaler = StandardScaler() # Ajustar el objeto Scaler a tus datos scaler.fit(datos) # Transformar tus datos usando el Scaler datos_estandarizados = scaler.transform(datos)
Cuando utilices estos datos estandarizados para entrenar modelos de aprendizaje automático, también deberás aplicar la misma transformación a los datos de entrada cuando realices predicciones.
La estandarización de datos es una técnica importante para comparar y trabajar con conjuntos de datos que tienen diferentes escalas. Python, con su librería scikit-learn, facilita la aplicación de esta técnica y mejora la capacidad de tus modelos para aprender y hacer predicciones precisas.