По долгу службы мне приходилось, да и приходится работать со статистическими данными. Очень часто нужно рассчитывать средние значения, например, среднее кол-во дней между покупками, среднюю сумму заказа, среднее кол-во пальцев на ногах (наверное такой показатель можно считать в зоопарке :-))... Обычно руки тянуться сразу применить функцию среднего в excel или в SQL. Но есть одно но... Строго говоря, среднее значение - это математический термин, и он имеет значение или смысл, только в случае нормального распределения. Пока предлагаю обратиться к определениям (не строгим):
Среднее - берется сумма значений и делится на кол-во значений. Например, если всего покупатели оставили в кассе за день 3000$ и кол-во чеков было 100, то среднее значение одного чека (покупки) равно 3000$[сумма значений] / 100 [кол-во значений] = 30$
Медиана - значение, которое делит выборку пополам. Считается оно так. Берем все суммы чеков, записываем их в один столбец (всего получится 100 строк), сортируем (по убыванию или возрастанию), находим 50 и 51 строку, берем сумму этих двух и делим пополам. И получаем, например, 20 $. Если же у нас было бы нечетное число чеков, например 101, то нужно было бы отсортировать их значения и взять 51 чек, это и будет значение, которое делить "выборку" чеков пополам.
Обратите внимание на то, что в выше приведенных примерах среднее равно 30$, а медиана 20$. Если я не ошибаюсь, то эти значения совпадут только для нормального (колокообразного) распределения
На графике выше представлено как раз такое рапределение чеков, по оси Y отложено кол-во чеков, по оси X - сумма чеков. Как видно из графика "срединное значение" или вершина колокола равна около 30$. Медиана также будет равна этому значению.Рассмотрим другой случай, который чаще встречается:
А вот как раз наш случай. Здесь среднее будет завышено относительно "смыслового срединного" значения. И значение среднего будет больше значения медианы. Также обратите внимание на "выброс" в районе 55$. Все это дает недостоверную картину, когда мы рассчитываем среднее и в таких случаях вместо него нужно рассчитывать медиану. Когда можно считать среднее, а не медиану (если выполняется хотя бы один пункт):
Распределение частот значений (гистограмма) близко к нормальному распределению
Если нужно не абсолютное значение, а следить за изменение параметра во времени (но это тоже не совсем корректно)
Если тяжело рассчитать :-(. Например, в TransactSQL функции расчета медианы нет, в Excel она есть.
Если лень ...
-- Решение на SQL Server 2000 USE pubs; GO
IF OBJECT_ID('dbo.fn_median') IS NOT NULL DROP FUNCTION dbo.fn_median; GO
CREATE FUNCTION dbo.fn_median(@stor_id AS CHAR(4)) RETURNS NUMERIC(11, 1) AS BEGIN RETURN ( (SELECT MAX(qty) FROM (SELECT TOP 50 PERCENT qty FROM dbo.sales WHERE stor_id = @stor_id ORDER BY qty) AS H1) + (SELECT MIN(qty) FROM (SELECT TOP 50 PERCENT qty FROM dbo.sales WHERE stor_id = @stor_id ORDER BY qty DESC) AS H2) ) / 2. END GO
SELECT stor_id, dbo.fn_median(stor_id) AS median FROM dbo.stores; GO
-- Решение на SQL Server 2005 WITH salesRN AS ( SELECT stor_id, qty, ROW_NUMBER() OVER(PARTITION BY stor_id ORDER BY qty) AS rownum, COUNT(*) OVER(PARTITION BY stor_id) AS cnt FROM sales ) SELECT stor_id, CAST(AVG(1.*qty) AS NUMERIC(11, 1)) AS median FROM salesRN WHERE rownum IN ((cnt+1)/2, (cnt+2)/2) GROUP BY stor_id; GO
Нет, медиана не только в случае нормального распределения равна среднему. Вообще во всех случаях когда распределение симметрично относительно среднего медиана совпадает со средним.
Спасибо за информацию, доступно и понятно объяснено, если еще плюс воспользоваться учебником по статистике)). Я поняла, что медиану нужно использовать если разброс между минимальным и максимальным значением выборки значителен. Тогда ряд нужно ранжировать, выбрать два элемента середины ряда и взять среднее. В моем случае вполне подойдет среднее)) Спасибо за статью)
Перед запуском рекламной кампании в электронной коммерции разрабатываются маркетинговые модели, которые должны в точности отражать маркетинговую стратегию.
Интернет-реклама (или интернет-маркетинг) приводит потенциальных клиентов на сайт и требует серьезных инвестиций. Веб-аналитика помогает сделать анализ рекламы,
оценить конверсию сайта и посещаемость сайта. В качестве технического средства лучше использовать Google analytics, это очень хороший счетчик посещений сайта, можно
сказать лучший из всех бесплатных счетчиков сайтов.
На эффективность продвижения юзабилити влияет, но не настолько, как сейчас распространено мнение в сети Инернет. Больше влияют алгоритмы рекомендаций и навигация на сайте.
Сайты накапливают базу данных клиентов. И анализ интернет-магазинов показывает, что эта информация в маркетинге используется слабо.
Business intelligence или bi система позволяет делать сегментацию потребителей по поведению и демографии, а также скоринг вероятности отклика клиента.
Data mining инструменты затем используют для проведения кампаний прямого маркетинга (или direct marketing) по базе данных клиентов.
OLAP и bsc (сбалансированные показатели) инструменты очень важны для анализа в маркетинге. Bi системы также являются основой любой аналитической CRM системы.
Все это образует электронный маркетинг. Об этом весь сайт KPIs.ru, включая мои лекции по маркетингу.