Módulo Statistics do Python

O módulo statistics fornece ferramentas simples para calcular médias, medianas e outras estatísticas descritivas.

O módulo foi adicionado no Python 3.4.

import statistics

Use statistics quando você precisar de cálculos comuns para uma pequena lista de números. Para análise avançada de dados, bibliotecas como NumPy e pandas são mais poderosas, mas não fazem parte da biblioteca padrão.

mean()

import statistics

scores = [80, 90, 95, 100]
print(statistics.mean(scores))
91.25

fmean retorna uma média em ponto flutuante e costuma ser mais rápida para dados numéricos:

import statistics

print(statistics.fmean([1, 2, 3]))
2.0

median()

import statistics

values = [1, 3, 5, 100]
print(statistics.median(values))
4.0

mode()

mode retorna o valor mais comum.

import statistics

print(statistics.mode(['python', 'python', 'rust']))
python

Se houver mais de um valor comum, multimode retorna todos:

import statistics

print(statistics.multimode(['red', 'blue', 'red', 'blue']))
['red', 'blue']

stdev()

stdev calcula o desvio padrão amostral.

import statistics

print(round(statistics.stdev([2, 4, 4, 4, 5, 5, 7, 9]), 2))
2.14

Lidando com dados vazios

A maioria das funções levanta StatisticsError para entrada vazia.

import statistics

try:
    statistics.mean([])
except statistics.StatisticsError as error:
    print(type(error).__name__)
StatisticsError