Comment calculer la moyenne et la déviation standard d'un tableau de données avec python ?


Pour calculer la moyenne et la déviation standard d'un échantillon avec python on peut utiliser numpy avec les fonctions numpy.mean et numpy.std respectivement.

Matrice de données

Pour tester, considérons un ensemble de nombres aléatoires générés depuis une distribution gaussienne avec comme vrai moyenne (mu = 10) et déviation standard (sigma = 2.0):

>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> mu = 10.0
>>> sigma = 2.0
>>> x = np.random.randn(10000) * sigma + mu

pour obtenir une estimation de la moyenne et la standard déviation:

Calcul de la moyenne

>>> print('mean: 'np.mean(x))

donne

>>> 10.003818651607594

Calcul de la déviation standard

>>> print('standard deviation', np.std(x))

donne:

>>> 1.9969664232497317

Tracer avec matplotlib

Calculer la moyenne et la déviation standard d'un échantillon avec python

import numpy as np
import matplotlib.pyplot as plt

data = np.random.randn(100000)

hx, hy, _ = plt.hist(data, bins=50, normed=1,color="lightblue")

plt.ylim(0.0,max(hx)+0.05)
plt.title('Generate random numbers \n from a standard normal distribution with python')
plt.grid()

plt.savefig("numpy_random_numbers_stantard_normal_distribution.png", bbox_inches='tight')
plt.show()

Références

Liens Site
numpy.mean docs.scipy.org
numpy.std docs.scipy.org
Image

of