Centrer et mettre à l'échelle les variables

Segmentation de la clientèle en Python

Karolis Urbonas

Head of Data Science, Amazon

Identifier un problème

  • Analysez les statistiques clés de l'ensemble de données
  • Comparez la moyenne et l'écart type
datamart_rfm.describe()

Segmentation de la clientèle en Python

Centrer des variables avec des moyennes différentes

  • K-means fonctionne bien sur des variables ayant la même moyenne
  • Centrer les variables consiste à soustraire la moyenne de chaque observation
datamart_centered = datamart_rfm - datamart_rfm.mean()
datamart_centered.describe().round(2)

Segmentation de la clientèle en Python

Mettre à l'échelle des variables à variance différente

  • K-means marche mieux avec des variables ayant la même variance / le même écart type
  • Mettre à l'échelle consiste à diviser par l'écart type de chaque variable
datamart_scaled = datamart_rfm / datamart_rfm.std()
datamart_scaled.describe().round(2)

Segmentation de la clientèle en Python

Combiner centrage et mise à l'échelle

  • Soustrayez la moyenne et divisez par l'écart type manuellement
  • Ou utilisez un « scaler » de la bibliothèque scikit-learn (retourne un objet 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.]
Segmentation de la clientèle en Python

Testez différentes approches par vous-même !

Segmentation de la clientèle en Python

Preparing Video For Download...