Обчислення p-значень за t-статистиками

Тестування гіпотез у Python

James Chapman

Curriculum Manager, DataCamp

t-розподіли

  • t-статистика має t-розподіл
  • Має параметр ступені вільності або df
  • Схожий на нормальний розподіл, але з товстішими хвостами

Графік із PDF стандартного нормального розподілу та t-розподілу з 1 ступенем вільності. T-розподіл має товстіші хвости й нижчий пік у центрі.

Тестування гіпотез у Python

Ступені вільності

  • Більші ступені вільності $\rightarrow$ t-розподіл наближається до нормального
  • Нормальний розподіл $\rightarrow$ t-розподіл з нескінченним df
  • Ступені вільності: максимальна кількість логічно незалежних значень у вибірці

Графік із PDF стандартного нормального розподілу та t-розподілів з різними ступенями вільності. Із зростанням ступенів вільності хвости вужчають, пік зростає, і форма більше нагадує нормальний розподіл.

Тестування гіпотез у Python

Обчислення ступенів вільності

  • Набір даних має 5 незалежних спостережень
  • Чотири значення: 2, 6, 8 і 5
  • Вибіркове середнє дорівнює 5
  • Останнє значення має бути 4
  • Тут 4 ступені вільності

 

  • $df = n_{child} + n_{adult} - 2$
Тестування гіпотез у Python

Гіпотези

$H_{0}$: Середня компенсація (USD) однакова для тих, хто почав кодувати в дитинстві, і тих, хто почав у дорослому віці

$H_{A}$: Середня компенсація (USD) вища для тих, хто почав кодувати в дитинстві, порівняно з тими, хто почав у дорослому віці

 

Використайте правосторонній критерій

Тестування гіпотез у Python

Рівень значущості

$\alpha = 0.1$

Якщо $p \le \alpha$, відхиляємо $H_{0}$.

Тестування гіпотез у Python

Обчислення p-значень: одна частка проти значення

from scipy.stats import norm
1 - norm.cdf(z_score)

$SE(\bar{x}_{\text{child}} - \bar{x}_{\text{adult}}) \approx \sqrt{\dfrac{s_{\text{child}}^2}{n_{\text{child}}} + \dfrac{s_{\text{adult}}^2}{n_{\text{adult}}}}$

  • z-статистика: потрібна, коли одну вибіркову статистику використовують для оцінювання параметра сукупності

  • t-статистика: потрібна, коли кілька вибіркових статистик використовують для оцінювання параметра сукупності

Тестування гіпотез у Python

Обчислення p-значень: два середні з різних груп

numerator = xbar_child - xbar_adult
denominator = np.sqrt(s_child ** 2 / n_child + s_adult ** 2 / n_adult)
t_stat = numerator / denominator
1.8699313316221844
degrees_of_freedom = n_child + n_adult - 2
2259
Тестування гіпотез у Python

Обчислення p-значень: два середні з різних груп

  • Використайте CDF t-розподілу, а не нормального
from scipy.stats import t
1 - t.cdf(t_stat, df=degrees_of_freedom)
0.030811302165157595
  • Є свідчення, що дата-сайєнтисти Stack Overflow, які почали кодувати в дитинстві, заробляють більше.
Тестування гіпотез у Python

Давайте потренуємось!

Тестування гіпотез у Python

Preparing Video For Download...