Теорія
Манна–Вітні: коли дані не нормальні
Ранговий критерій для скошених метрик, як-от виручка чи тривалість сесії.
~10 хв читання · 11 вправ · 250 балів
Перед початком
Редизайн і візит на 130 секунд
Та сама продуктова команда Котокорму, новий тест: сторінку товару переробили, і в тебе є час, який відвідувачі на ній провели, — шість сесій на старій сторінці й шість на новій. Один відвідувач нової сторінки пробув значно довше за всіх, найімовірніше, просто залишив вкладку відкритою.
Одне таке значення здатне зіпсувати середнє. У цьому уроці ти познайомишся з критерієм, який порівнює групи за порядком значень, а не за їхньою величиною.
Чому ранговому критерію байдужі викиди
t-критерій побудований на середніх, а середнє прислухається до кожного значення пропорційно до його величини. Одна сесія на 130 секунд серед сесій близько хвилини тягне середнє нової сторінки з 64,6 до 75,5 секунди й ще й роздуває дисперсію. t-статистика тоді сильно залежить від одного відвідувача, що залишив вкладку відкритою.

U-критерій Манна-Вітні замінює кожне значення його рангом: позицією, коли обидві групи відсортовано разом. Сесія на 130 секунд стає просто «найдовшою», ранг 12. Тривала вона 73 секунди чи 7 300, ранг той самий, тож вона не може домінувати в результаті.
Тому U-критерій Манна-Вітні — природний вибір для двох незалежних груп, коли:
- в одній групі є екстремальні викиди;
- метрика сильно скошена, як-от виручка на користувача чи тривалість сесії;
- дані існують лише як ранги чи впорядковані категорії.
Універсальною заміною він не є. Для парних даних потрібен критерій для залежних вибірок, а результати «так/ні» порівнюють критерієм для часток.
- ТакТривалість сесій з однією вкладкою на 130 секунд → U-критерій Манна-Вітні.
Викид зберігає місце, але втрачає вагу.
- Не такВидалити сесію на 130 секунд і застосувати t-критерій, нікому не сказавши.
Мовчки викидає реальні дані, щоб інструмент підійшов.
Ранжування двох груп разом
U-критерій Манна-Вітні починається з того, що забуває, з якої групи кожне значення.
- Об'єднай усі спостереження обох груп в один список: тут 12 сесій.
- Відсортуй їх від найменшого до найбільшого.
- Проранжуй: 1 — найкоротша, 12 — найдовша.
- Розклади ранги назад за групами й додай. Кожна сума — це сума рангів.
Сесії старої сторінки (38, 42, 47, 49, 55, 61 секунда) потрапляють на ранги 1, 2, 3, 4, 5 і 8, тож R₁ = 23. Нова сторінка отримує ранги 6, 7, 9, 10, 11 і 12, тож R₂ = 55.
Дані графіка
| Ранг | Стара сторінка | Нова сторінка |
|---|---|---|
| 1 | 38 | |
| 2 | 42 | |
| 3 | 47 | |
| 4 | 49 | |
| 5 | 55 |
Показати ще 7 рядків
| 6 | 58 | |
| 7 | 60 | |
| 8 | 61 | |
| 9 | 65 | |
| 10 | 68 | |
| 11 | 72 | |
| 12 | 130 |
Вбудована перевірка ловить помилки: ранги від 1 до N завжди дають у сумі N(N + 1) / 2. Для N = 12 це 12 × 13 / 2 = 78, і справді 23 + 55 = 78.
Інтуїція: якби сторінки були однакові, їхні ранги перемішалися б, і кожна сума рангів була б близько половини від 78, тобто 39. Сума рангів, далека від 39, як-от 23, означає, що значення однієї групи тяжіють до низу спільного списку.
- ТакРанги старої сторінки 1 + 2 + 3 + 4 + 5 + 8 = 23; перевірка 23 + 55 = 78 = 12 × 13 / 2.
Ранжувати обидві групи разом, потім сумувати за групами.
- Не такРанжувати кожну сторінку окремо: стара 1–6, нова 1–6, тож обидві суми — 21.
Окреме ранжування стирає будь-яку різницю між групами.
Від суми рангів до U
Сума рангів залежить від розміру групи, тож її перетворюють на зручніше число, U:
U₁ = R₁ − n₁(n₁ + 1) / 2
Частина, яку віднімають, — найменша можлива сума рангів для групи з n₁ значень: ранги від 1 до 6 дають 6 × 7 / 2 = 21. Тож U₁ показує, наскільки вище за цю «підлогу» опинилася група. Для старої сторінки товару в тесті Котокорму (6 сесій, сума рангів R₁ = 23): 23 − 21 = 2.
У U гарний зміст: воно рахує перемоги в парах. Візьми кожну пару «сесія старої сторінки + сесія нової», 6 × 6 = 36 пар, і порахуй, як часто сесія старої сторінки довша. Лише 61-секундна сесія старої сторінки перемагає дві нові (58 і 60), тож U₁ = 2.

Отже, U біля 0 означає, що одна група майже ніколи не перемагає іншу; U біля половини пар (тут 18) — що групи добре перемішані. Стара сторінка виграє лише 2 з 36 поєдинків, і це сильний натяк, що нова сторінка довше утримує відвідувачів.
- ТакU₁ = 23 − 6 × 7 / 2 = 23 − 21 = 2
Відняти найменшу можливу суму рангів.
- Не такU₁ = 23 − 12 × 13 / 2 = −55
Узято загальне N замість n₁ групи; U не буває від'ємним.
U₂, перевірка й статистика критерію
Для другої групи, нової сторінки товару (6 сесій, сума рангів R₂ = 55), працює той самий рецепт:
U₂ = R₂ − n₂(n₂ + 1) / 2 = 55 − 21 = 34
Формула: U кожної групи віднімає суму рангів, яку вона мала б, якби ранжувалась сама із собою. Менше з двох значень — це статистика U Манна-Вітні. · є вище
U₂ рахує пари, які виграє нова сторінка: 34 з 36.
Дві перевірки варті кількох секунд:
- U₁ + U₂ = n₁ × n₂. У кожній парі рівно один переможець, тож перемоги дають у сумі кількість пар: 2 + 34 = 36 = 6 × 6. Якщо ні, десь помилка в ранзі чи сумі.
- Суми рангів дають N(N + 1) / 2: 23 + 55 = 78 = 12 × 13 / 2.
Статистика критерію — менше з двох:
U = min(U₁, U₂) = min(2, 34) = 2
Менше значення робить критерій чутливим в обидва боки: хоч яка група тяжіє вгору, перекошений поділ штовхає менше U до нуля. Таблиці критичних значень побудовані саме для меншого U, тож завжди порівнюй min(U₁, U₂), а не більше значення.
- ТакU₂ = 55 − 21 = 34; перевірка 2 + 34 = 36 = 6 × 6; U = min(2, 34) = 2.
Обидва U, перевірка, потім менше.
- Не такПоказати U = 34 і порівняти з критичним значенням 5.
Таблиця — для меншого U; 34 хибно виглядатиме «незначущим».
Правило рішення діє навпаки
У t-критерії хвилює велике значення статистики: |t| понад критичне — відхиляємо H0. У U-критерії Манна-Вітні навпаки.
Відхиляй H0, коли U ≤ критичного значення.
Чому? U рахує, як часто одна група перемагає іншу. Якби групи походили з одного розподілу, перемоги поділилися б приблизно порівну, близько половини від n₁ × n₂ кожній. Мале U означає, що одна група майже ніколи не перемагає: ранги ледь перекриваються, і це доказ реальної різниці.
Критичне значення беруть із таблиці; воно залежить від обсягів груп і від того, який рівень значущості обрано. Для n₁ = n₂ = 6, двобічно при α = 0,05, це 5. У тесті сторінки товару Котокорму (по 6 сесій на сторінку) U = 2 ≤ 5, тож різниця в тривалості сесій значуща на рівні 5%. Для n₁ = n₂ = 8 воно 13: U = 25 там не було б значущим.
Це перевернуте правило — найчастіша помилка у звітах про U-критерій Манна-Вітні. Перш ніж робити висновок, промов правило вголос: «мале U — значуще».
- ТакU = 2, критичне 5 (n₁ = n₂ = 6): 2 ≤ 5 → відхиляємо H0.
Мале U — значуще.
- Не такU = 25, критичне 13 (n₁ = n₂ = 8): «25 > 13, значуще!»
Застосовано напрям t-критерію; тут групи сильно перекриваються.
Що каже результат U-критерію Манна-Вітні
U-критерій Манна-Вітні не порівнює середні. Він перевіряє, чи значення однієї групи тяжіють до вищих рангів, ніж значення іншої. Значущий результат підтримує речення на кшталт «сесії на новій сторінці зазвичай довші».
Тож показуй його числами, що відповідають цьому запитанню:
- медіани кожної групи: 48 секунд на старій сторінці, 66,5 на новій;
- частку перемог у парах: сесія старої сторінки була довшою лише у 2 з 36 пар (U₁ = 2), нової — у 34;
- результат критерію: U = 2, критичне значення 5, значуще на рівні 5%.
Спокуслива помилка — застосувати ранговий критерій, а потім показати різницю середніх. Тут середні — 48,7 і 75,5 секунди, різниця 26,8, але чималу її частину дали 130 секунд однієї відкритої вкладки. Без неї середнє нової сторінки — 64,6. U-критерій Манна-Вітні обрали саме тому, що середнім не можна було довіряти, тож не повертай їх у заголовок.
Якщо потрібен розмір ефекту в секундах, чесний супутник — різниця медіан, приблизно 18,5 секунди.
- Так«Сесії на новій сторінці зазвичай довші (медіана 66,5 с проти 48 с; U = 2, p < 0,05)».
Стійкі числа, що відповідають тому, що перевіряє критерій.
- Не так«U-критерій Манна-Вітні доводить, що нова сторінка додає в середньому 26,8 секунди».
Ранговий критерій нічого не каже про середні, а це середнє роздуте.
Параметричні й непараметричні критерії
Увесь метод тримається на чотирьох словах:
- ранг — позиція спостереження, коли обидві групи відсортовано разом, 1 — найменше;
- сума рангів (R) — сума рангів, що належать одній групі;
- статистика U — менше з U₁ та U₂, число, яке порівнюють із критичним значенням;
- непараметричний критерій не робить припущень про форму розподілу.
Останній варто розглянути уважніше. Параметричний критерій, як-от t-критерій, припускає, що дані (або принаймні вибіркові середні) мають відому форму, нормальний розподіл, описаний параметрами на кшталт середнього й стандартного відхилення. Непараметричний критерій, як-от U-критерій Манна-Вітні, працює лише з порядком, тож форма не має значення.
«Непараметричний» не означає «без припущень». U-критерій Манна-Вітні все одно потребує двох незалежних груп, а його результат — про те, що значення однієї групи тяжіють до вищих рангів, а не про середні. Не плутай терміни у звітах: «сума рангів 23» і «U = 2» — різні числа.
- Так«Суми рангів 23 і 55; U = min(2, 34) = 2».
Кожне число названо тим, чим воно є.
- Не так«Непараметричний, тож підійде й для даних до і після на тих самих користувачах».
U-критерій Манна-Вітні все одно потребує незалежних груп.
U-критерій Манна-Вітні чи t-критерій: компроміс
Ранжування — свідомий обмін: віддаєш точні величини, щоб отримати стійкість. Чи вигідний він, залежить від даних.

Бери U-критерій Манна-Вітні, коли:
- метрика сильно скошена, з довгим хвостом високих значень (виручка на користувача, час у застосунку);
- кілька крайніх значень домінували б у середньому;
- дані існують лише як ранги чи впорядковані категорії («1-й, 2-й, 3-й» або задоволеність від «погано» до «чудово»).
Лишайся з t-критерієм, коли вибірки великі й приблизно нормальні без неприємних викидів. Там він потужніший: на тих самих даних краще виявляє реальний ефект, бо використовує самі значення, а не лише їхній порядок.
Не бери жодного, коли результат «так/ні» (пішов, купив, клікнув). Це порівняння часток, і для нього є свій критерій.
Практична звичка: спершу поглянь на гістограму чи діаграму розмаху кожної групи. Асиметрія й викиди, які видно, — причина перейти на ранги; «про всяк випадок» — ні.
- ТакВиручка на користувача з кількома «китами» в кожній групі → U-критерій Манна-Вітні.
Асиметрію й викиди видно в даних.
- Не такЗавжди брати U-критерій Манна-Вітні «про всяк випадок», навіть на 20 000 чистих значень у формі дзвона.
Втрачає потужність задарма.
Однакові значення: ділимо ранги
У реальних даних бувають однакові значення: дві сесії рівно по 14 секунд, кілька клієнтів, що поставили товару 4 зірки. Вони не можуть бути водночас рангом 2 і рангом 3, а довільний вибір змінював би результат залежно від того, яке поставили першим.
Правило просте: однакові значення ділять середнє рангів, які вони займають.
- Після сортування: 10, 14, 14, 20, 25, 30.
- Дві «14» займають ранги 2 і 3, тож кожна отримує (2 + 3) / 2 = 2,5.
- Далі все як звичайно: 20 — ранг 4.
Стара сторінка (10, 14, 20) отримує ранги 1, 2,5 і 4, тож R₁ = 7,5, а U₁ = 7,5 − 6 = 1,5. Дробові U за однакових значень — це нормально.
Звичні перевірки працюють: ранги дають у сумі 6 × 7 / 2 = 21 (7,5 + 13,5), а U₁ + U₂ = 1,5 + 7,5 = 9 = 3 × 3. У термінах пар нічия рахується як пів перемоги кожній стороні.
За великої кількості однакових значень програми вносять у критерій невелику поправку; правило усереднення — те, що потрібно, щоб рахувати ранги вручну.
- Так14, 14 на рангах 2 і 3 → обидва 2,5; R₁ = 1 + 2,5 + 4 = 7,5; U₁ = 1,5
Однакові значення ділять середній ранг.
- Не так«14» старої сторінки отримує ранг 2, нової — ранг 3 → U₁ = 1
Результат залежить від того, в якому порядку їх випадково записали.
Готові потренуватися?
Виконайте вправи уроку й отримайте 250 балів, коли пройдете його вперше.
Розпочати вправи