Médiane et écart interquartile
Exercice d'entraînement · niveau 3 (difficile) · mathématiques appliquées (ECG 1re année), chapitre 11 — Informatique et algorithmique · Parcours de listes et coût
Énoncé
Écrire mediane(L) et interquartile(L) (différence entre le troisième et le premier quartile), en travaillant sur une copie triée de L et en traitant le cas d'un effectif pair. Montrer sur un exemple qu'une valeur aberrante déplace fortement la moyenne mais presque pas la médiane.
Corrigé
Le code.
def mediane(L):
T = sorted(L) # copie triee : L n'est pas modifiee
n = len(T)
if n % 2 == 1:
return T[n // 2] # effectif impair : valeur centrale
return (T[n // 2 - 1] + T[n // 2]) / 2 # effectif pair : moyenne des deux
def interquartile(L):
T = sorted(L)
n = len(T)
q1 = mediane(T[: n // 2]) # moitie basse
q3 = mediane(T[(n + 1) // 2 :]) # moitie haute
return q3 - q1
Pourquoi sorted et non L.sort(). sorted rend une nouvelle liste et laisse L intacte ; L.sort() réordonne la liste de l'appelant. Une fonction d'analyse ne doit pas modifier les données qu'on lui confie — un effet de bord invisible qui fausserait tout calcul ultérieur sur L.
Le cas pair. Avec pair, il n'y a pas de valeur centrale : on prend la moyenne des deux valeurs d'indices et . Sur cela donne . Prendre T[n // 2] seul renverrait : une médiane systématiquement décalée vers le haut, erreur d'autant plus difficile à voir qu'elle reste plausible.
Les découpes des quartiles. La moitié basse est T[: n // 2] et la moitié haute T[(n + 1) // 2 :] : lorsque est impair, la valeur centrale est ainsi exclue des deux moitiés, ce qui est la convention la plus répandue.
Exemple, et la valeur aberrante. Prenons . La somme vaut , donc la moyenne est ; la médiane est ; les quartiles sont et , d'où un écart interquartile de .
Remplaçons maintenant par (une erreur de saisie). La somme devient , donc la moyenne saute à — soit . La médiane, elle, reste : les valeurs centrales n'ont pas bougé. L'écart interquartile devient , inchangé lui aussi.
Ce que l'exemple démontre. Médiane et écart interquartile sont robustes : ils ne dépendent que du rang des valeurs, pas de leur grandeur. Moyenne et écart-type, eux, sont sensibles à une seule valeur extrême. Sur des salaires, des patrimoines ou des durées, c'est presque toujours le couple médiane/interquartile qui décrit correctement les données — et cette différence de à est exactement ce que le programme demande de savoir discuter.
Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.