statistics — Математическая статистика

Модуль statistics содержит функции для вычисления математической статистики и центральных тенденций численных данных (типа int и float). Этот модуль отлично подходит для базового анализа, когда тащить огромную библиотеку pandas или numpy нет смысла.

import statistics

Базовые показатели (Среднее, Медиана, Мода)

import statistics

# Допустим, мы измеряем возраст посетителей магазина
data = [18, 20, 20, 25, 45, 60]

# Среднее арифметическое
print(statistics.mean(data))   # 31.3333

# Медиана (число ровно посередине отсортированного списка)
# Медиана меньше подвержена выбросам, чем среднее.
print(statistics.median(data)) # 22.5

# Мода (самый частый элемент)
print(statistics.mode(data))   # 20

Дисперсия и Отклонение

Стандартное отклонение измеряет "разброс" данных — насколько далеко значения отстоят от среднего арифметического.

import statistics

data = [1, 2, 4, 5, 8]

# Дисперсия (Variance)
print(statistics.variance(data)) # 7.5

# Стандартное отклонение (Standard Deviation)
print(statistics.stdev(data))    # ~2.7386

Полный справочник API (API Reference)

Меры центральной тенденции

Функция Описание
statistics.mean(data) Обычное среднее арифметическое. Выбрасывает ошибку при пустом списке.
statistics.fmean(data) Более быстрая версия mean. Ожидает и возвращает только числа float.
statistics.median(data) Медиана. Возвращает элемент из самой середины сортированного списка (или среднее арифметическое двух средних элементов, если длина списка четная).
statistics.mode(data) Мода (наиболее часто встречающееся значение).
statistics.multimode(data) Возвращает список всех мод (если часто встречаются несколько чисел).
statistics.quantiles(data, n=4) Квантили. Разбивает данные на n интервалов равной вероятности. При n=4 выдает квартили, при n=100 выдает перцентили.

Меры разброса данных

Функция Описание
statistics.stdev(data) Выборочное стандартное отклонение (Standard deviation).
statistics.variance(data) Выборочная дисперсия (квадрат стандартного отклонения).
statistics.pstdev(data) Стандартное отклонение генеральной совокупности (Population).
statistics.pvariance(data) Дисперсия генеральной совокупности.