Python é uma das lin­gua­gens de pro­gra­ma­ção mais populares para es­ta­tís­ti­cas e de­sen­vol­vi­mento de in­te­li­gên­cia ar­ti­fi­cial (IA). Portanto, não é de se sur­pre­en­der que ela ofereça muitos métodos e módulos que ajudam pro­gra­ma­do­res a processar grandes quan­ti­da­des de dados. Aqui, vamos examinar o método mean em Python, que permite de­ter­mi­nar o valor médio de vários números.

O que é o método mean em Python?

Sintaxe e fun­ci­o­na­li­dade de Python mean

O método Python mean é simples: ele recebe um conjunto de números e devolve a média deles. Os números, tanto inteiros quanto de ponto flutuante, devem estar contidos em uma lista como um único argumento. O resultado do cálculo, por sua vez, é sempre exibido como um número de ponto flutuante. Conheça sua sintaxe e operação no exemplo a seguir.

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)     # saída: 2.0
print(y)     # saída: 1.8800000000000001
python

Como você pode ver no exemplo acima, o método funciona exa­ta­mente como descrito: ele recebe uma lista de números e retorna a média deles. Este resultado é sempre exibido como um número de ponto flutuante, neste caso np.mean([1, 3, 2]). O valor médio desses números é exa­ta­mente 2, embora o resultado seja exibido como 2.0. Além disso, este exemplo mostra que você pode passar a lista di­re­ta­mente ou como uma variável que já foi criada.

Dois outros detalhes im­por­tan­tes sobre o método mean em Python podem ser retirados deste exemplo. O primeiro refere-se à precisão dos números de ponto flutuante e o segundo ao módulo NumPy.

Exibir números de ponto flutuante com Python mean

Se você fizer o segundo cálculo do exemplo acima ma­nu­al­mente, obterá exa­ta­mente 1.88, embora o código não apresente esse resultado. Isso se deve a como os números de ponto flutuante são re­pre­sen­ta­dos no sistema numérico binário, no qual todos os cal­cu­la­do­res modernos são baseados. Assim como no sistema decimal comum, existem alguns números fra­ci­o­ná­rios que não podem ser re­pre­sen­ta­dos com precisão pelo sistema binário. Um exemplo disso, no sistema decimal, é 0.3333… Mesmo que você sempre adicione mais um 3, nunca obterá exa­ta­mente um terço.

Embora esse problema seja ine­vi­tá­vel, a precisão dos números de ponto flutuante é alta o su­fi­ci­ente para que não faça muita diferença na maioria dos casos. Ainda assim, é bom ter essas questões de precisão em mente ao trabalhar com números de ponto flutuante.

Python mean e módulo NumPy

Como pode ser observado no exemplo acima, o método mean não pertence à bi­bli­o­teca padrão de Python. Para usar este método, você precisa importá-lo de um módulo externo, como “NumPy” ou “sta­tis­tics”. Talvez seja ne­ces­sá­rio instalar esses módulos, mas uma vez que isso for feito, você poderá integrá-los com fa­ci­li­dade. Para fazer isso, basta adicionar a linha de código import numpy no início do seu código. Al­ter­na­ti­va­mente, se você quiser re­fe­ren­ciar o módulo com outro nome no futuro, poderá escrever “import numpy as x”, sendo “x” o nome desejado.

Dica

Você está pro­cu­rando publicar sua aplicação web de forma rápida, fácil e di­re­ta­mente pelo GitHub? Então o Deploy Now da IONOS pode ser a solução ideal para você!

Al­ter­na­ti­vas ao método Python mean

Como men­ci­o­nado, o método mean não pertence à bi­bli­o­teca padrão de Python e sim a módulos externos, como “NumPy”, que precisam ser im­por­ta­dos. Se não for possível ou não quiser fazer isso, você também pode im­ple­men­tar o método meanxc ma­nu­al­mente. Tudo o que você precisará fazer é escrever algumas linhas de código:

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

Os métodos sum e len usados aqui estão in­cor­po­ra­dos à bi­bli­o­teca padrão de Python, o que significa que você não precisará importá-los. Como pode-se ver no exemplo a seguir, im­ple­mentá-lo funciona exa­ta­mente como mean de 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)    # saída: 2.0
print(y)    # saída: 1.8800000000000001
python
Nota

Além de métodos como mean, ope­ra­do­res em Python são es­sen­ci­ais para o pro­ces­sa­mento de conjuntos de dados. No nosso artigo sobre o assunto, exa­mi­na­mos cada operador e o que eles oferecem.

Apli­ca­ções do método Python mean

Agora vamos mostrar alguns exemplos do método mean na prática. No código a seguir, o usuário é re­pe­ti­da­mente so­li­ci­tado a inserir um número. Este número é con­ver­tido de uma string para um inteiro e adi­ci­o­nado a uma lista. O valor médio dos elementos nesta lista é então con­ti­nu­a­mente atu­a­li­zado e exibido a cada nova entrada.

import numpy as np
lista = []
while(True):
    lista.append(int(input('adicione um número à lista: ')))
    print(np.mean(lista))
python

O próximo exemplo apresenta três pessoas, cada uma com uma co­or­de­nada x, y e z. O método mean é aplicado e o ponto de encontro das três pessoas é calculado e exibido.

import numpy as np
# coordenadas x, y e z de 3 pessoas:
pessoa1 = [1.5, 6.0, 4.2]
pessoa2 = [10.0, 9.0, 7.7]
pessoa3 = [15.5, 0.0, -5.0]
pessoas = [pessoa1, pessoa2, pessoa3]
posição_média = []
i = 0
while(i < len(pessoa1)):
    temp = []
    for x in pessoas:
        temp.append(x[i])
    posição_média.append(np.mean(temp))
    i = i + 1
print(posição_média)     # saída: [9.0, 5.0, 2.3000000000000003]
python
Ir para o menu principal