Python compte parmi les langages de pro­gram­ma­tion les plus po­pu­laires en ce qui concerne les sta­tis­tiques et le dé­ve­lop­pe­ment de l’in­tel­li­gence ar­ti­fi­cielle (IA). Le fait que Python propose déjà plusieurs méthodes et modules destinés à faciliter gran­de­ment le trai­te­ment des données n’a donc rien de sur­pre­nant. Découvrez avec nous la méthode mean de Python, et apprenez à dé­ter­mi­ner la valeur moyenne de toutes sortes de nombres.

Pré­sen­ta­tion rapide de la méthode mean de Python

Syntaxe et fonc­tion­ne­ment

Il est vraiment simple d’expliquer le fonc­tion­ne­ment de la méthode mean : elle utilise un ensemble de nombres pour vous renvoyer leur valeur moyenne. Pour ce faire, les nombres en question doivent être regroupés au sein d’une même liste, transmise en tant que seul argument. La méthode peut aussi bien être utilisée avec des nombres entiers qu’avec des nombres flottants. D’ailleurs, le résultat du calcul apparaît toujours sous la forme d’un nombre flottant. L’exemple ci-dessous illustre la syntaxe et le fonc­tion­ne­ment de cette méthode.

import numpy as np
x = np.mean([1, 3, 2])
numbers = [1, 1.3, 4, 2.1, 1.0]
y = np.mean(numbers)
print(x)     # output: 2.0
print(y)     # output: 1.8800000000000001
Python

Comme le montre l’exemple ci-dessus, la méthode fonc­tionne exac­te­ment comme nous vous l’avons expliqué : une liste de nombres lui est transmise, et elle s’occupe de renvoyer leur valeur moyenne. Ce résultat se présente toujours sous la forme d’un nombre flottant, comme vous pouvez le voir dans l’exemple (« np.mean([1, 3, 2]) »). 2 est la valeur moyenne cor­res­pon­dante ; et même s’il s’agit d’un nombre entier, le résultat reste tout de même « 2.0 ». Cet exemple montre en outre que vous pouvez choisir de trans­mettre la liste di­rec­te­ment, ou alors en tant que variable déjà créée.

Cet exemple contient aussi deux autres détails im­por­tants sur la méthode mean de Python : le premier est en lien avec la précision des nombres flottants, et le second concerne le module « numpy ».

Affichage des nombres flottants

Si vous effectuez vous-même ma­nuel­le­ment le deuxième calcul présent dans l’exemple ci-dessus, alors vous ob­tien­drez un résultat exact de 1,88. Toutefois, ce n’est pas ce que le programme affiche. Cette dif­fé­rence s’explique par l’affichage des nombres flottants dans le cadre du système numérique binaire, qui constitue la base de tous les or­di­na­teurs modernes. Comme c’est aussi le cas dans le système décimal habituel, il est im­pos­sible de re­pré­sen­ter avec précision certains nombres frac­tion­naires dans le système binaire. Dans le système décimal, nous pourrions prendre pour exemple la valeur « 0,3333… ». Vous pouvez ajouter autant de « 3 » que vous voulez, mais vous ne par­vien­drez jamais exac­te­ment à un tiers.

Ce problème ne peut pas être évité, mais les nombres flottants restent néanmoins suf­fi­sam­ment précis pour que dans la plupart des cas, la dif­fé­rence soit infime. Vous devez toutefois être conscient des problèmes de précision associés aux nombres flottants lorsque vous tra­vail­lez avec ceux-ci.

Le module « numpy »

Comme vous pouvez le voir dans l’exemple ci-dessus, la méthode mean ne fait pas partie de la bi­blio­thèque standard de Python. En effet, pour utiliser cette méthode, vous devez l’importer d’un module externe tel que « numpy » ou « sta­tis­tics ». Il se peut que vous ayez à installer ces modules, mais une fois cette opération réalisée, ils s’in­tè­gre­ront très fa­ci­le­ment à votre programme. Pour ce faire, ajoutez sim­ple­ment la ligne de code « import numpy » au début de votre programme. Pour ré­fé­ren­cer ce module sous un autre nom à l’avenir, n’hésitez pas également à écrire « import numpy as x », « x » cor­res­pon­dant au nom que vous souhaitez donner au module.

Conseil

Vous cherchez à publier ra­pi­de­ment et fa­ci­le­ment, voire di­rec­te­ment, votre ap­pli­ca­tion Web en passant par Git ? Alors Deploy Now est vraiment la solution IONOS qu’il vous faut !

Solutions de subs­ti­tu­tion à la méthode mean de Python

Comme nous l’avons vu ensemble, la méthode mean n’apparaît pas dans la bi­blio­thèque standard de Python ; pour l’obtenir, vous devez passer par l’im­por­ta­tion de modules externes tels que « numpy ». Si cette solution est im­pos­sible ou que vous ne souhaitez pas y recourir, vous pouvez aussi choisir d’im­plé­men­ter vous-même la méthode mean. Pour ce faire, les quelques lignes de code suivantes suffisent :

def mean(numbers):
    return sum(numbers)/len(numbers)
Python

Les méthodes « sum » et « len » utilisées dans le cadre de cette im­plé­men­ta­tion sont pour leur part intégrées à la bi­blio­thèque standard de Python, et peuvent donc être appelées sans qu’il soit né­ces­saire de les importer. Comme le montre l’exemple ci-dessous, cette im­plé­men­ta­tion fonc­tionne exac­te­ment de la même manière que la méthode « mean » du module « numpy ».

def mean(numbers):
    return sum(numbers)/len(numbers)
x = mean([1, 3, 2])
numbers = [1, 1.3, 4, 2.1, 1.0]
y = mean(numbers)
print(x)    # output: 2.0
print(y)    # output: 1.8800000000000001
Python
Note

En plus des méthodes telles que « mean », les opé­ra­teurs Python sont es­sen­tiels au trai­te­ment des ensembles de données. Découvrez notre article à ce sujet, avec une pré­sen­ta­tion de chaque opérateur et des pos­si­bi­li­tés qu’il offre.

Exemples d’ap­pli­ca­tion de la méthode mean de Python

Pour finir, passons ensemble en revue quelques exemples il­lus­trant la manière dont la méthode mean peut être utilisée. Dans le programme suivant, il est demandé à plusieurs reprises à l’uti­li­sa­teur de ren­seig­ner un nombre. Par une con­ver­sion, celui-ci passe d’une String à un nombre entier, avant d’être ajouté à une liste. La valeur moyenne des éléments présents dans cette liste est toujours affichée, et elle s’actualise en per­ma­nence chaque fois que l’uti­li­sa­teur renseigne un nouveau nombre.

import numpy as np
list = []
while(True):
    list.append(int(input('add number to list: ')))
    print(np.mean(list))
Python

L’exemple ci-dessous concerne trois personnes, chacune avec une coor­don­née « x », « y » et « z ». La méthode mean est alors appliquée de manière à calculer et afficher le point central pour ces trois personnes.

import numpy as np
# x, y, and z-coordinates of 3 people:
person1 = [1.5, 6.0, 4.2]
person2 = [10.0, 9.0, 7.7]
person3 = [15.5, 0.0, -5.0]
people = [person1, person2, person3]
Average position = []
i = 0
while(i < len(person1)):
    temp = []
    for x in people:
        temp.append(x[i])
    average position.append(np.mean(temp))
    i = i + 1
print(average position)     # output: [9.0, 5.0, 2.3000000000000003]
Python
Aller au menu principal