NumPy Mean() vs Average() : quelle est la différence ?
Vous pouvez utiliser les fonctions np.mean() ou np.average() pour calculer la valeur moyenne d’un tableau en Python.
Voici la subtile différence entre les deux fonctions :
- np.mean calcule toujours la moyenne arithmétique.
- np.average a un paramètre de pondération facultatif qui peut être utilisé pour calculer une moyenne pondérée.
Les exemples suivants montrent comment utiliser chaque fonction dans la pratique.
Exemple 1 : utilisez np.mean() et np.average() sans poids
Supposons que nous ayons le tableau suivant en Python qui contient sept valeurs :
#create array of values
data = [1, 4, 5, 7, 8, 8, 10]
Nous pouvons utiliser np.mean() et np.average() pour calculer la valeur moyenne de ce tableau :
import numpy as np
#calculate average value of array
np.mean(data)
6.142857142857143
#calcualte average value of array
np.average(data)
6.142857142857143
Les deux fonctions renvoient exactement la même valeur.
Les deux fonctions ont utilisé la formule suivante pour calculer la moyenne :
Moyenne = (1 + 4 + 5 + 7 + 8 + 8 + 10) / 7 = 6,142857 …
Exemple 2 : utilisez np.average() avec des poids
Supposons encore une fois que nous ayons le tableau suivant en Python qui contient sept valeurs :
#create array of values
data = [1, 4, 5, 7, 8, 8, 10]
Nous pouvons utiliser np.average() pour calculer une moyenne pondérée pour ce tableau en fournissant une liste de valeurs aux paramètres de poids :
import numpy as np
#calculate weighted average of array
np.average(data, weights=(.1, .2, .4, .05, .05, .1, .1))
5.45
La moyenne pondérée s’avère être de 5,45 .
Voici la formule utilisée par np.average() pour calculer cette valeur :
Moyenne pondérée = 1*.1 + 4*.2 + 5*.4 + 7*.05 + 8*.05 + 8*.1 + 10*.1 = 5.45 .
Notez que nous n’avons pas pu utiliser np.mean() pour effectuer ce calcul puisque cette fonction n’a pas de paramètre de pondération .
Reportez-vous à la documentation NumPy pour une explication complète des fonctions np.mean() et np.average() .
Ressources additionnelles
Les didacticiels suivants expliquent comment calculer d’autres valeurs moyennes en Python :
Comment calculer les moyennes mobiles en Python
Comment calculer une moyenne cumulative en Python