Comment calculer la moyenne géométrique en Python (avec exemples)



Il existe deux façons de calculer la moyenne géométrique en Python :

Méthode 1 : calculer la moyenne géométrique à l’aide de SciPy

from scipy.stats import gmean

#calculate geometric mean
gmean([value1, value2, value3, ...])

Méthode 2 : calculer la moyenne géométrique à l’aide de NumPy

import numpy as np

#define custom function
def g_mean(x):
    a = np.log(x)
    return np.exp(a.mean())

#calculate geometric mean 
g_mean([value1, value2, value3, ...])

Les deux méthodes renverront exactement les mêmes résultats.

Les exemples suivants montrent comment utiliser chacune de ces méthodes dans la pratique.

Exemple 1 : calculer la moyenne géométrique à l’aide de SciPy

Le code suivant montre comment utiliser la fonction gmean() de la bibliothèque SciPy pour calculer la moyenne géométrique d’un tableau de valeurs :

from scipy.stats import gmean

#calculate geometric mean
gmean([1, 4, 7, 6, 6, 4, 8, 9])

4.81788719702029

La moyenne géométrique s’avère être 4,8179 .

Exemple 2 : calculer la moyenne géométrique à l’aide de NumPy

Le code suivant montre comment écrire une fonction personnalisée pour calculer une moyenne géométrique à l’aide des fonctions intégrées de la bibliothèque NumPy :

import numpy as np

#define custom function
def g_mean(x):
    a = np.log(x)
    return np.exp(a.mean())

#calculate geometric mean
g_mean([1, 4, 7, 6, 6, 4, 8, 9])

4.81788719702029

La moyenne géométrique s’avère être 4,8179 , ce qui correspond au résultat de l’exemple précédent.

Comment gérer les zéros

Notez que les deux méthodes renverront un zéro s’il y a des zéros dans le tableau avec lequel vous travaillez.

Ainsi, vous pouvez utiliser le morceau de code suivant pour supprimer les zéros d’un tableau avant de calculer la moyenne géométrique :

#create array with some zeros
x = [1, 0, 0, 6, 6, 0, 8, 9]

#remove zeros from array 
x_new = [i for i in x if i != 0]

#view updated array
print(x_new)

[1, 6, 6, 8, 9]

Ressources additionnelles

Comment calculer l’erreur quadratique moyenne (MSE) en Python
Comment calculer l’erreur absolue moyenne en Python

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *