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
Instructions
- Instanciez un
QuantileTransformer()qui transforme les variables en une distribution normale et affectez-le àqt. - Ajustez et transformez le tableau de caractéristiques
Xen 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()