Урок курса

Среднее и медиана: выбор меры центра

Практическая аналитика данных

В предыдущих уроках мы считали агрегаты — суммы, количества, доли — и строили чарты на их основе. Теперь возникает следующий вопрос: как одним числом описать «типичный» заказ? Для этого нужны меры центра, и выбор между ними напрямую влияет на то, что вы скажете руководителю.

Среднее арифметическое: формула и чувствительность к значениям

Среднее арифметическое — сумма всех значений ряда, делённая на их количество:

x̄ = (x₁ + x₂ + … + xₙ) / n

Каждое значение входит в числитель с коэффициентом 1, то есть вносит в сумму ровно свою величину. После деления на n вклад каждого наблюдения в итоговое среднее составляет xᵢ/n. Именно поэтому большие значения сильнее сдвигают результат: значение 50 000 руб. добавляет к среднему 50 000/n руб., а значение 500 руб. — лишь 500/n руб., то есть в 100 раз меньше. Среднее называют линейной функцией всех значений: изменение любого одного из них на Δ сдвигает среднее ровно на Δ/n.

Посмотрим на конкретные данные. Возьмём пять paid-заказов магазина «Маяк» за 1–2 января 2024 года (gross_revenue): 10 500, 8 700, 8 500, 10 950 и 18 900 руб. Первые четыре заказа датированы 1 января, пятый — 2 января. Среднее:

(10 500 + 8 700 + 8 500 + 10 950 + 18 900) / 5 = 57 550 / 5 = 11 510 руб.

Здесь заказ на 18 900 руб. примерно вдвое крупнее остальных, и это заметно тянет среднее вверх: оно оказывается выше четырёх из пяти исходных значений.

Если бы один заказ стоил не 18 900, а 189 000 руб., среднее стало бы (57 550 − 18 900 + 189 000) / 5 = 45 530 руб. — и это при том, что четыре заказа из пяти остались в диапазоне 8 500–10 950 руб. Прирост одного значения на 170 100 руб. сдвигает среднее на 170 100 / 5 = 34 020 руб. Механизм прямой и предсказуемый: среднее не умеет «не замечать» крайние наблюдения.

Медиана: позиционный центр ранжированного ряда

Медиана устроена иначе: она опирается не на числовые величины значений, а на их порядок в отсортированном ряду.

Алгоритм такой:

  1. Отсортируй все значения по возрастанию.
  2. Если n нечётное — медиана стоит на позиции (n + 1) / 2.
  3. Если n чётное — медиана равна среднему двух центральных элементов: на позициях n / 2 и n / 2 + 1.

Пример с нечётным n. Пять заказов, отсортированные по gross_revenue: 8 500, 8 700, 10 500, 10 950, 18 900. Позиция центра: (5 + 1) / 2 =

  1. Медиана = 10 500 руб. Значение 18 900 стоит на пятой позиции — правее центра — и никак не влияет на результат: важно лишь то, что оно больше центрального элемента.

Пример с чётным n. Добавим шестой заказ: 8 500, 8 700, 10 500, 10 950, 12 000, 18 900. Позиции центра: 3 и

  1. Медиана = (10 500 + 10 950) / 2 = 10 725 руб. Если бы последний заказ стоил не 18 900, а 189 000 руб., медиана осталась бы 10 725 руб. — крайнее значение сдвинулось бы дальше вправо, но не поменяло позиции 3 и 4.

Это ключевое свойство медианы: величина значений за пределами центра не имеет значения. Имеет значение только их наличие и порядок.

Мысленный опыт на пяти значениях примера: последнее увеличено в десять раз. Число наблюдений и центральная позиция сохранены; медиана не меняется, среднее растёт. Это не изменение исходного CSV.

Мысленный опыт на пяти значениях примера: последнее увеличено в десять раз. Число наблюдений и центральная позиция сохранены; медиана не меняется, среднее растёт. Это не изменение исходного CSV.

Как выброс сдвигает среднее и не трогает медиану

Реальные данные по paid-заказам магазина «Маяк» дают наглядный пример этого расхождения. Вот помесячная статистика по gross_revenue:

Период Заказов Среднее, руб. Медиана, руб. Макс. заказ, руб.
2024-01 82 11 378 8 525 49 000
2024-02 89 15 348 9 600 302 400
2024-03 101 11 788 8 000 62 400
2024-04 106 10 375 7 850 50 000
2024-05 112 9 135 5 850 42 000

Во всех периодах среднее заметно превышает медиану. Особенно выразителен февраль 2024: среднее 15 348 руб., медиана 9 600 руб. Разница — почти 60%.

Разберём февраль подробнее. В этом месяце 89 paid-заказов — нечётное число, поэтому медиана стоит ровно на позиции (89 + 1) / 2 = 45 в отсортированном ряду. Значение на этой позиции — 9 600 руб. Максимальный заказ, 302 400 руб., занимает 89-ю позицию — последнюю в ряду. Он стоит далеко правее центра и на позицию 45 никак не влияет: для нахождения медианы важно лишь то, что этот заказ больше 45-го элемента, а не то, насколько он больше.

Между тем тот же заказ заметно сдвигает среднее. Один заказ на 302 400 руб. добавляет к числителю 302 400 руб. Разделив на 89 заказов, получаем вклад в среднее: 302 400 / 89 ≈ 3 397 руб. — ровно столько этот один заказ «добавляет» к среднему каждого из 89 наблюдений. Без него среднее было бы заметно ближе к медиане.

В январе 2024 картина схожая, хотя менее резкая: три заказа превысили верхнюю границу 36 650 руб. (рассчитанную по межквартильному размаху), а максимум достиг 49 000 руб. Позиция центра ряда из 82 заказов (чётное n) — среднее 41-го и 42-го элементов — от этих трёх значений не зависит: они стоят правее. Медиана остаётся вблизи 8 525 руб., тогда как среднее поднимается до 11 378 руб.

Практический вывод — в понимании самого механизма: если сообщить «средний чек за февраль — 15 348 руб.», большинство заказов (медиана — 9 600 руб.) окажутся ниже этой цифры. Аудитория получит завышенное представление о типичной покупке. Среднее в данном случае описывает не то, что происходит с большинством заказов, а то, как один крупный заказ распределился бы равномерно по всем.

Когда брать среднее, а когда медиану

Выбор меры центра определяется двумя проверяемыми условиями: симметрией распределения и наличием выбросов.

Среднее подходит, когда:

  • распределение примерно симметрично — крупные и мелкие отклонения от центра уравновешивают друг друга;
  • нет резких выбросов — все значения находятся в разумном диапазоне относительно основной массы данных.

В этом случае среднее и медиана близки, и среднее удобнее: оно аддитивно (средние можно взвешивать и агрегировать) и хорошо знакомо любой аудитории.

Медиана подходит, когда:

  • распределение асимметрично, особенно с длинным правым хвостом;
  • есть единичные крупные значения, которые смещают среднее далеко от большинства наблюдений;
  • среднее оказывается выше большинства реальных значений.

Диагностический шаг — сравнить среднее и медиану. Если среднее заметно больше медианы, это повод проверить упорядоченный ряд, посмотреть на крайние значения и оценить распределение в целом. Само по себе это соотношение не доказывает правостороннюю асимметрию: существуют ряды, у которых среднее превышает медиану, а коэффициент асимметрии при этом отрицателен. Вывод о структуре данных требует проверки распределения, а не одного числа.

Для данных gross_revenue магазина «Маяк» диагностика даёт устойчивый результат во всех пяти месяцах: среднее стабильно превышает медиану, а в ряду присутствуют единичные заказы, кратно превышающие верхнюю границу межквартильного диапазона. Именно наблюдаемое сочетание — заметный разрыв между средним и медианой плюс подтверждённые крупные выбросы — обосновывает выбор медианы при описании типичного заказа.

Проверить картину по месяцам можно так:

import pandas as pd

orders = pd.read_csv('orders.csv', parse_dates=['order_date'])
paid = orders[orders['status'] == 'paid'].copy()
paid['period'] = paid['order_date'].dt.to_period('M')

result = paid.groupby('period')['gross_revenue'].agg(
    mean_revenue='mean',
    median_revenue='median'
)
result['mean_vs_median'] = result['mean_revenue'] / result['median_revenue']

result = result.round({'mean_revenue': 0, 'median_revenue': 0, 'mean_vs_median': 2})
print(result)

Столбец mean_vs_median показывает, во сколько раз среднее превышает медиану в каждом месяце. В феврале 2024 это значение составит 1.60: среднее (15 348 руб.) превышает медиану (9 600 руб.) почти в полтора раза. Это не автоматически означает правосторонний хвост, но вместе с наблюдаемым максимумом 302 400 руб. — подтверждённым выбросом — даёт достаточно оснований выбрать медиану как меру центра.

Практическое правило: если отчёт отвечает на вопрос «какова типичная покупка?» — используйте медиану. Если нужно оценить суммарный эффект (суммарную выручку можно восстановить как среднее × количество заказов) — среднее остаётся корректным инструментом, но с явной оговоркой о природе распределения и влиянии крупных заказов.

Задача 1

Условный пример (данные не из реального файла). За один день небольшой интернет-магазин принял пять оплаченных заказов с суммами (руб.): 300, 500, 600, 700, 5400. Вычислите медиану суммы заказа. Введите ответ целым числом.

Без регистрации · результат не сохраняется

Задача 2

За неделю суммы шести оплаченных заказов небольшого магазина составили (руб.): 400, 600, 700, 800, 900, 8600. Среднее = 2000 руб., медиана = 750 руб. Аналитик хочет сообщить руководителю «типичную сумму заказа». Какую меру центра следует использовать и почему?

Выберите один вариант
Без регистрации · результат не сохраняется

Задача 3

Сопоставьте каждую ситуацию с наиболее подходящей мерой центра и кратким обоснованием из списка.

Ситуации:

  1. Суммы 200 заказов распределены примерно симметрично вокруг 1500 руб., выбросов нет.
  2. Время доставки 150 заказов: большинство — 1–3 дня, несколько заказов ждали 30–60 дней из-за сбоя на складе.
  3. Суммы ежедневной выручки за 30 дней примерно одинаковы, максимум отличается от минимума менее чем в 1,5 раза.

Меры и обоснования:
A. Медиана — распределение асимметрично, выбросы смещают среднее вверх относительно большинства значений.
B. Среднее — распределение симметрично, выбросов нет, среднее близко к медиане и хорошо описывает типичное значение.
C. Среднее — значения однородны, выбросов нет, среднее устойчиво.

Запишите ответ в формате «1-?, 2-?, 3-?», заменив ? на букву (например: 1-X, 2-Y, 3-Z).

Без регистрации · результат не сохраняется

Задача 4

Аналитик сообщает руководителю: «Средняя сумма paid-заказа за прошлый месяц — 3200 руб.» Позже выясняется, что медиана за тот же период — 850 руб. Какой управленческий вывод точнее всего описывает ситуацию?

Выберите один вариант
Без регистрации · результат не сохраняется

Задача 5

Для четырёх заказов с суммами 500, 700, 900 и 3800 руб. вычислите среднее и медиану, затем ответьте на три вопроса в указанном формате.

Формат ответа (три строки):

  1. Среднее = ??? руб.
  2. Медиана = ??? руб.
  3. Среднее [больше / меньше] медианы, потому что заказ на 3800 руб. является [выбросом / медианой] и смещает среднее [вверх / вниз].

Примечание: ряд чётный — медиана равна среднему двух центральных элементов упорядоченного ряда.

Без регистрации · результат не сохраняется

Продолжить с сохранением прогресса

Перейдите к уроку в учебном кабинете.

Перейти к интерактивному уроку