Accéder au contenu principal

Moyenne winsorisée : une approche robuste pour gérer les valeurs aberrantes

Une moyenne winsorisée réduit l’influence des valeurs aberrantes en plafonnant les valeurs extrêmes à des percentiles donnés, tout en préservant la structure globale du jeu de données. Lisez la suite pour apprendre à la calculer avec Python, pas à pas.
Actualisé 19 sept. 2026  · 7 min lire

Explorer avec l’IA

ChatGPTClaudePerplexity

Les valeurs aberrantes peuvent souvent vous induire en erreur et transformer une analyse pertinente en conclusion trompeuse. Dans les cas concrets, des données imparfaites et bruyantes sont la norme ; la winsorisation est une solution pratique pour atténuer l’impact des valeurs aberrantes sans supprimer de données.

Cet article explique le fonctionnement de la moyenne winsorisée, ses applications concrètes et les étapes pour la calculer avec Python. Nous en verrons les avantages et limites, la comparerons à d’autres mesures utiles comme la moyenne tronquée et explorerons d’autres statistiques winsorisées.

Qu’est-ce qu’une moyenne winsorisée ?

La moyenne winsorisée est une mesure statistique qui réduit l’impact des valeurs aberrantes en remplaçant les valeurs extrêmes par des percentiles moins extrêmes plutôt que de les supprimer totalement. Contrairement à la moyenne arithmétique, qui pondère également tous les points, la moyenne winsorisée limite l’influence des valeurs extrêmes susceptibles de fausser le résultat global.

La winsorisation consiste à plafonner ou remplacer les valeurs au-delà d’un seuil de percentile. Par exemple, avec une winsorisation à 5 %, les 5 % des plus petites valeurs sont remplacées par la valeur au 5e percentile et les 5 % des plus grandes par la valeur au 95e percentile. Cette méthode permet de conserver la structure d’ensemble du jeu de données tout en réduisant l’effet des valeurs aberrantes ; elle constitue une alternative robuste à la moyenne classique lorsque des extrêmes sont présents.

Applications pratiques de la moyenne winsorisée

La pertinence de la moyenne winsorisée apparaît particulièrement dans les domaines où les distributions sont asymétriques. Voici quelques cas d’usage clés :

  • Finance et analyse d’investissement : Les jeux de données financiers contiennent souvent des valeurs extrêmes (krachs, hausses exceptionnelles) qui biaisent les moyennes et masquent les tendances. En winsorisant les rendements ou les prix, les analystes obtiennent des indicateurs plus stables et plus représentatifs du comportement courant du marché.
  • Données économiques : En macroéconomie, des indicateurs comme les revenus ou la richesse sont souvent tirés par quelques valeurs très hautes ou très basses. Les moyennes winsorisées offrent une vue plus équilibrée des conditions économiques en limitant l’influence de ces observations extrêmes.
  • Enquêtes et sciences sociales : Les enquêtes peuvent produire des réponses extrêmes (notes très hautes ou très basses). Dans ces cas, la moyenne winsorisée fournit une mesure centrale plus fiable, évitant qu’une minorité d’extrêmes ne pèse excessivement sur l’analyse globale.
  • Recherche médicale et biologique : Les données cliniques (résultats, mesures biologiques) peuvent présenter des valeurs extrêmes liées à des cas rares. Winsoriser ces données aide à estimer une moyenne plus fidèle sans écarter des points potentiellement informatifs.

Dans tous ces cas, la moyenne winsorisée est une alternative robuste à la moyenne standard : elle éclaire l’analyse en limitant l’effet des extrêmes tout en préservant les motifs importants des données.

Comment calculer la moyenne winsorisée en Python

Calculer une moyenne winsorisée en Python revient à remplacer les valeurs extrêmes par les valeurs aux percentiles choisis. Avant de commencer, voici les étapes :

  • Importer les bibliothèques et le jeu de données.

  • Winsoriser le jeu de données avec scipy.winsorize().

  • Calculer la moyenne avec numpy.mean().

Passons aux détails avec un exemple. 

Importer les bibliothèques et le jeu de données

Nous importons d’abord les bibliothèques nécessaires au calcul de la moyenne.

import numpy as np
from scipy.stats.mstats import winsorize

Ensuite, nous chargeons le jeu de données depuis un CSV ou une autre source. Pour simplifier, nous allons créer un échantillon avec numpy.

data = np.array([10, 12, 14, 15, 16, 18, 20, 22, 24, 25, 30, 35, 40, 45, 50, 60, 70, 80, 82, 85, 90, 200])

La valeur 200 pourrait être considérée comme aberrante au vu d’une première analyse.

Winsoriser le jeu de données 

La fonction winsorize() de scipy permet de spécifier le pourcentage de données à winsoriser dans les queues inférieure et supérieure. Le code est le suivant :

# Winsoriser 5 % des deux côtés
winsorized_data = winsorize(data, limits=[0.05, 0.05])

Ici, le paramètre limits=[0.05, 0.05] passé à winsorize() remplace les 5 % des plus petites et des plus grandes valeurs par les valeurs aux 5e et 95e percentiles, respectivement. Nous pouvons maintenant examiner les données winsorisées obtenues.

print("Original data: ", data)
print("Winsorized data: ", winsorized_data)

La sortie montre que les valeurs aberrantes ont été remplacées :

Original data: [ 10 12 14 15 16 18 20 22 24 25 30 35 40 45 50 60 70 80 82 90 200]
Winsorized data: [ 12 12 14 15 16 18 20 22 24 25 30 35 40 45 50 60 70 80 82 90 90]

Ici, la valeur maximale 200 est remplacée par 90 ; de même, la valeur basse extrême, 10, est remplacée par 12.

Calculer la moyenne 

Calculons enfin la moyenne des données winsorisées :

winsorized_mean = np.mean(winsorized_data)
print("Winsorized mean: ", winsorized_mean)

La sortie est la suivante :

Winsorized mean: 42.5

La moyenne winsorisée réduit l’influence des valeurs très élevées par rapport à une moyenne classique. Pour comparer, calculons la moyenne initiale :

original_mean = np.mean(data)
print("Original mean: ", original_mean)

La sortie est la suivante :

Original mean: 47.40909090909091

La moyenne originale à 47,40 est fortement tirée par les extrêmes, donc plus élevée. Après winsorisation, la moyenne tombe à 42,5, moins influencée par ces valeurs.

Moyenne winsorisée vs moyenne tronquée : différences clés

La moyenne winsorisée et la moyenne tronquée visent toutes deux à limiter l’effet des valeurs aberrantes sur la moyenne, mais elles diffèrent dans leur traitement des extrêmes :

  • Moyenne winsorisée : remplace les valeurs extrêmes (dans les deux queues) par les valeurs les plus proches au sein du jeu de données. Elle ne supprime pas d’observations ; elle ajuste les plus extrêmes pour en réduire l’impact.
  • Moyenne tronquée : supprime un pourcentage des plus petites et des plus grandes valeurs. Avec 5 % de troncature, les 5 % plus bas et 5 % plus hauts sont exclus du calcul.

On privilégiera la moyenne winsorisée lorsqu’il s’agit de préserver la structure des données (taille d’échantillon inchangée) tout en réduisant l’effet des extrêmes. La moyenne tronquée est préférable quand des outliers manifestes doivent être retirés et qu’une taille d’échantillon plus faible est acceptable.

Comparer moyenne tronquée et moyenne winsorisée en Python

Voyons l’effet des deux méthodes sur le jeu de données et comparons leurs résultats.

from scipy.stats import trim_mean

# Calculer la moyenne tronquée en retirant 5 % de chaque côté
trimmed_mean = trim_mean(data, proportiontocut=0.05)

# Afficher les résultats
print("Original mean: ", np.mean(data))
print("Winsorized mean (5%): ", winsorized_mean)
print("Trimmed mean (5%): ", trimmed_mean)

La sortie est la suivante :

Original mean: 47.40909090909091
Winsorized mean (5%): 42.5
Trimmed mean (5%): 41.65

La moyenne initiale est 47,4, fortement influencée par les outliers. La moyenne winsorisée à 42,5 est calculée après remplacement des extrêmes par des valeurs moins extrêmes. La moyenne tronquée, où les extrêmes sont supprimés, vaut 41,65.

Quand utiliser chaque méthode

Utilisez la moyenne winsorisée si vous souhaitez conserver tous les points tout en atténuant l’impact des valeurs extrêmes. C’est une bonne heuristique lorsque vous pensez que les outliers sont plausibles mais que vous voulez limiter leur influence.

Utilisez la moyenne tronquée si vous souhaitez retirer complètement les outliers du jeu de données. Elle est adaptée lorsque vous suspectez des erreurs ou des valeurs non représentatives de la distribution.

Résumé des différences clés

On peut résumer les différences comme suit :

Principales différences entre moyenne winsorisée et moyenne tronquéePrincipales différences entre moyenne winsorisée et moyenne tronquée. Image de l’auteur.

Winsorisation et troncature aident toutes deux à gérer les outliers ; le choix dépend de votre intention de conserver ou d’éliminer les valeurs extrêmes.

Avantages et limites de la moyenne winsorisée

Bien que robuste pour traiter les outliers, la modification des valeurs extrêmes peut soulever des questions de manipulation. Voici ses atouts et ses limites :

Avantages

  • Plus robuste que la moyenne standard en présence d’outliers : la moyenne winsorisée réduit l’influence des extrêmes et fournit une tendance centrale plus stable et plus fiable lorsque des outliers risquent de fausser le résultat.
  • Préserve la structure globale en conservant tous les points : contrairement à la moyenne tronquée, qui écarte des valeurs, la moyenne winsorisée les remplace par des valeurs moins extrêmes, maintenant la taille d’échantillon et la structure.
  • Mieux adaptée aux petits échantillons : lorsque supprimer des points (troncature) rendrait l’échantillon peu représentatif, la winsorisation conserve toutes les observations et maintient l’utilisabilité des données.

Limites

  • Peut introduire un biais si la distribution est asymétrique : winsoriser selon des percentiles fixes (p. ex. 5 % de chaque côté) peut biaiser la tendance centrale si les données sont fortement asymétriques.
  • Nécessite un choix soigné du pourcentage : la proportion winsorisée est souvent choisie de façon arbitraire. Un mauvais réglage peut soit laisser trop d’influence aux outliers, soit modifier trop de valeurs et réduire la représentativité.
  • Une winsorisation excessive peut masquer des signaux : modifier trop de points peut occulter des motifs ou tendances utiles. Dans certains cas (finance, événements rares mais marquants), remplacer des extrêmes peut conduire à de mauvaises conclusions.

Il est donc essentiel de peser le pour et le contre avant d’intégrer cette technique à vos analyses.

Autres concepts statistiques winsorisés

La winsorisation étant une technique applicable à différentes mesures, on peut l’étendre à d’autres statistiques usuelles. Voici quelques exemples :

  • Écart type winsorisé : version winsorisée de l’écart type, mesurant la dispersion d’un jeu de données winsorisé. Calculé comme la racine carrée de la variance winsorisée.
  • Variance winsorisée : contrepartie winsorisée de la variance ; elle mesure l’écart des points à la moyenne winsorisée, avec une moindre influence des outliers. C’est la moyenne des carrés des écarts à la moyenne winsorisée.
  • Étendue winsorisée : différence entre les valeurs maximale et minimale du jeu de données winsorisé, plus faible que l’étendue originale du fait du remplacement des extrêmes.
  • Asymétrie (skewness) winsorisée : mesure l’asymétrie de la distribution après winsorisation (vers la gauche ou la droite), utile lorsque les valeurs extrêmes biaisent le calcul standard de l’asymétrie.
  • Corrélation winsorisée : version winsorisée de la corrélation de Pearson évaluant la relation linéaire entre deux variables tout en réduisant l’impact des outliers dans les deux jeux de données.

Chacune de ces mesures aide à limiter l’influence des valeurs aberrantes lors d’analyses avec des données non normales ou comportant des extrêmes.

Conclusion

Ce tutoriel a présenté une mesure statistique pour traiter les valeurs aberrantes : la moyenne winsorisée. Nous avons défini la winsorisation, vu ses usages concrets et réalisé une mise en pratique sur un échantillon. Nous avons également couvert la moyenne tronquée, sa mise en œuvre et ses différences avec la moyenne winsorisée, ainsi que les avantages, limites et autres concepts statistiques fondés sur la winsorisation. 

Comme nous l’avons vu, la moyenne winsorisée trouve un juste milieu entre écarter et conserver les outliers, offrant des résultats plus fiables sur des jeux de données asymétriques. Nous vous encourageons à l’utiliser dans vos projets d’analyse, en testant différents niveaux de winsorisation pour identifier ce qui convient le mieux à chaque jeu de données.

Découvrez notre cours Intermediate Predictive Analytics in Python pour approfondir le traitement des valeurs aberrantes en Python, dont la winsorisation. Explorez aussi notre Machine Learning Scientist with Python career track, idéal pour vous exercer en construisant de vrais modèles.

Devenez un scientifique ML

Maîtriser Python pour devenir un scientifique de l'apprentissage automatique
Commencez À Apprendre Gratuitement

Arunn Thevapalan's photo
Author
Arunn Thevapalan
LinkedIn
Twitter

En tant que data scientist senior, je conçois, développe et déploie des solutions d'apprentissage automatique à grande échelle pour aider les entreprises à prendre de meilleures décisions basées sur les données. En tant que rédacteur spécialisé dans la science des données, je partage mes apprentissages, mes conseils de carrière et des tutoriels pratiques approfondis.

Foire aux questions

Qu’est-ce qu’une moyenne winsorisée ?

La moyenne winsorisée est une mesure statistique robuste qui réduit l’impact des valeurs aberrantes en remplaçant les valeurs extrêmes par des percentiles moins extrêmes.

Quand utiliser la moyenne winsorisée plutôt que la moyenne standard ?

La moyenne winsorisée est à privilégier lorsque votre jeu de données contient des outliers susceptibles de fausser la moyenne.

En quoi la moyenne winsorisée diffère-t-elle de la moyenne tronquée ?

La moyenne winsorisée remplace les outliers par les valeurs aux percentiles spécifiés, tandis que la moyenne tronquée les élimine totalement.

Quels sont les avantages de la moyenne winsorisée ?

Plus robuste que la moyenne standard en présence d’outliers, elle préserve la structure du jeu de données en conservant tous les points et convient mieux aux petits échantillons. Elle offre un compromis efficace pour réduire l’influence des extrêmes sans écarter des informations importantes.

Quelles autres mesures statistiques winsorisées existe-t-il en dehors de la moyenne ?

La winsorisation s’applique à plusieurs mesures : écart type winsorisé, variance winsorisée, étendue winsorisée, asymétrie winsorisée et corrélation winsorisée. Elles limitent l’influence des outliers sur différents aspects de l’analyse.

Sujets
Analyse des données
Python

Apprenez avec DataCamp

Cours

Introduction aux statistiques en Python

4 h
197.2K
Renforcez vos compétences statistiques en collectant, analysant et interprétant les données avec précision grâce à Python.
Afficher les détailsRight Arrow
Commencer Le Cours
Voir plusRight Arrow