Exercice 79 / 100

Stats — Corrélation

ConsigneCalcule et visualise la corrélation entre variables

📖 Cours

Plusieurs coefficients mesurent l'association entre deux variables. Le choix dépend de la nature des données.

Pearson (r)

Mesure la force d'une relation linéaire. Domaine : [-1, +1].

from scipy import statsr, p = stats.pearsonr(x, y)

Valeurs typiques

|r| > 0.7 → forte|r| > 0.3 → modérée|r| < 0.3 → faible

Sensible aux outliers. Suppose une distribution normale.

Spearman (ρ)

Mesure une relation monotone (pas forcément linéaire). Robuste aux outliers.

rho, p = stats.spearmanr(x, y)

Utilisation typique : variables ordinales (classement, notes), ou quand la relation est courbe mais croissante.

Kendall (τ)

Alternative à Spearman, plus conservative.

tau, p = stats.kendalltau(x, y)

La p-value associée

Teste H0 : "il n'y a pas de corrélation".

p < 0.05 → corrélation statistiquement significative

Attention : avec un grand n, une corrélation faible (r=0.05) peut être significative mais sans utilité pratique.

Exemple complet

import numpy as npfrom scipy import stats
np.random.seed(42)x = np.random.uniform(0, 10, 50)y = 2 * x + 3 + np.random.normal(0, 2, 50)
r, p_r = stats.pearsonr(x, y)print(f'Pearson r: {r:.4f}, p-value: {p_r:.6f}')
rho, p_s = stats.spearmanr(x, y)print(f'Spearman ρ: {rho:.4f}')
if abs(r) > 0.7: print('Forte corrélation')elif abs(r) > 0.3: print('Modérée')else: print('Faible')

corrélationcausalité. Vente de glace et noyades sont corrélées en été — pas l'une à cause de l'autre.

Deux mesures peuvent monter ensemble sans que l'une cause l'autre : c'est la chaleur qui fait grimper les ventes de glace et les noyades, et la corrélation entre ces deux-là ne dit rien de plus
Deux mesures peuvent monter ensemble sans que l'une cause l'autre : c'est la chaleur qui fait grimper les ventes de glace et les noyades, et la corrélation entre ces deux-là ne dit rien de plus

Pour visualiser : un nuage de points (scatter) + une régression vaut mieux qu'un nombre tout seul.

Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →