Centrar y escalar variables

Segmentación de clientes en Python

Karolis Urbonas

Head of Data Science, Amazon

Identificar un problema

  • Analiza estadísticas clave del dataset
  • Compara media y desviación estándar
datamart_rfm.describe()

Segmentación de clientes en Python

Centrar variables con medias distintas

  • K-means funciona bien con variables con la misma media
  • Centrar es restar la media a cada observación
datamart_centered = datamart_rfm - datamart_rfm.mean()
datamart_centered.describe().round(2)

Segmentación de clientes en Python

Escalar variables con varianza distinta

  • K-means funciona mejor con la misma varianza/desviación estándar
  • Escalar es dividir por la desviación estándar de cada variable
datamart_scaled = datamart_rfm / datamart_rfm.std()
datamart_scaled.describe().round(2)

Segmentación de clientes en Python

Combinar centrado y escalado

  • Resta la media y divide por la desviación estándar manualmente
  • O usa un scaler de la librería scikit-learn (devuelve un objeto numpy.ndarray)
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
scaler.fit(datamart_rfm)
datamart_normalized = scaler.transform(datamart_rfm)

print('mean: ', datamart_normalized.mean(axis=0).round(2)) print('std: ', datamart_normalized.std(axis=0).round(2))
mean:  [-0. -0.  0.]
std:  [1. 1. 1.]
Segmentación de clientes en Python

¡Vamos a practicar!

Segmentación de clientes en Python

Preparing Video For Download...