CommencerCommencer gratuitement

Tester QuantileTransformer

La standardisation souffre des mêmes écueils que les z-scores. Toutes deux utilisent la moyenne et l’écart type dans leurs calculs, ce qui les rend très sensibles aux valeurs extrêmes.

Pour contourner ce problème, utilisez QuantileTransformer, qui s’appuie sur les quantiles. Les quantiles d’une distribution restent inchangés, quelle que soit l’ampleur des valeurs aberrantes.

Vous devriez utiliser StandardScaler lorsque les données suivent une loi normale (ce que vous pouvez vérifier avec un histogramme). Pour d’autres distributions, QuantileTransformer est un meilleur choix.

Vous allez vous entraîner sur le jeu de données females déjà chargé. matplotlib.pyplot est importé sous son alias habituel, plt.

Cet exercice fait partie du cours

Détection d’anomalies en Python

Afficher le cours

Instructions

  • Instanciez un QuantileTransformer() qui transforme les variables en une distribution normale et affectez-le à qt.
  • Ajustez et transformez le tableau de caractéristiques X en conservant les noms de colonnes.
  • Tracez un histogramme de la colonne palmlength.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

from sklearn.preprocessing import QuantileTransformer

# Instantiate an instance that casts to normal
qt = ____

# Fit and transform the feature array
X.____ = ____

# Plot a histogram of palm length
plt.____(____, color='red')

plt.xlabel("Palm length")
plt.show()
Modifier et exécuter le code