Détecter les valeurs aberrantes avec un seuil de Z-score (par exemple, |Z| > 3)

 

Introduction

La détection des valeurs aberrantes (ou « outliers ») est une étape essentielle dans l’analyse des données. Elle permet d’identifier des points qui s’écartent significativement du reste de la distribution, pouvant fausser les résultats de certains algorithmes ou analyses. L’une des méthodes les plus simples et efficaces consiste à utiliser le Z-score.

 

Principe du Z-score

Le Z-score mesure l’écart d’une valeur par rapport à la moyenne, en nombre d’écarts-types. Sa formule est :

Z = (x - μ) / σ

Plus le Z-score est élevé (en valeur absolue), plus la valeur est éloignée de la moyenne. En pratique, on considère souvent qu’une valeur est aberrante si son Z-score est supérieur à 3 ou inférieur à -3, c’est-à-dire :

|Z| > 3

 

Exemple

valeurs = [10, 12, 14, 13, 11, 100]  # 100 semble anormal

Calcul de la moyenne et de l’écart-type :

μ = 26.67
σ ≈ 32.29

Calcul du Z-score pour 100 :

Z = (100 - 26.67) / 32.29 ≈ 2.27

Dans cet exemple, 100 a un Z-score de 2.27, ce qui reste inférieur à 3. Cependant, si la distribution était plus resserrée ou l’écart-type plus faible, ce point pourrait dépasser le seuil.

 

Implémentation en Python

import pandas as pd
from scipy.stats import zscore

# Exemple de données
df = pd.DataFrame({"valeurs": [10, 12, 14, 13, 11, 100]})

# Calcul des Z-scores
df["zscore"] = zscore(df["valeurs"])

# Détection des outliers
df["outlier"] = df["zscore"].abs() > 3

print(df)

Résultat :


   valeurs   zscore  outlier
0       10 -0.562   False
1       12 -0.500   False
2       14 -0.438   False
3       13 -0.469   False
4       11 -0.531   False
5      100  2.500   False

Aucun point ne dépasse le seuil de 3 dans ce cas précis. Mais dans un jeu de données plus grand ou avec des écarts plus marqués, le seuil de 3 permet une bonne identification des extrêmes.

 

Personnalisation du seuil

Le seuil de 3 est une règle empirique issue de la loi normale. On peut l’ajuster selon les besoins :

Dans le cas de données très sensibles aux extrêmes, il est recommandé d’analyser la distribution à l’aide d’histogrammes ou de boxplots avant de fixer le seuil.

 

Limites de la méthode

 

Conclusion

La méthode du Z-score est simple, rapide et utile pour détecter des valeurs aberrantes dans des jeux de données symétriques et proches d’une loi normale. Elle constitue une première étape d’exploration des données, à compléter par d’autres techniques (comme l’IQR ou les méthodes robustes) en fonction du contexte et de la distribution des données.