NumPy regroupe toutes les statistiques descriptives utiles directement sur les arrays.
np.mean(a) moyenne
np.median(a) médiane (valeur du milieu une fois trié)
np.std(a) écart-type (divise par n)
np.std(a, ddof=1) écart-type d'échantillon (divise par n-1)
np.var(a) variance
np.min(a) / np.max(a)
np.ptp(a) étendue (peak-to-peak = max - min)np.percentile(a, 25) Q1 (1er quartile)
np.percentile(a, 50) médiane (Q2)
np.percentile(a, 75) Q3 (3ème quartile)
np.percentile(a, [25, 50, 75]) les trois d'un coup
np.quantile(a, 0.95) 95e centile (notation 0-1)iqr (interquartile range) = Q3 - Q1, utilisé pour la règle de détection d'outliers (en dehors de [Q1 - 1.5·iqr, Q3 + 1.5·iqr]).
Sur une matrice (2D), spécifie axis :
M = np.array([[1,2,3],[4,5,6]])M.mean() 4.0 (moyenne globale)
M.mean(axis=0) [2.5 3.5 4.5] (moyenne par colonne)
M.mean(axis=1) [2. 5.] (moyenne par ligne)notes = np.array([12, 15, 8, 17, 14, 9, 16, 11, 13, 18])print('Moyenne:', np.mean(notes))
print('Médiane:', np.median(notes))
print('Écart-type:', np.std(notes))
print('Min/Max:', np.min(notes), np.max(notes))
print('Percentile 25:', np.percentile(notes, 25))
print('Percentile 75:', np.percentile(notes, 75))Pour des stats sur des données réelles (échantillon), utilise ddof=1. La différence est négligeable pour n grand, mais correcte conceptuellement.
Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →