Проверка гипотез для сравнения двух средних с помощью симуляции

Статистический вывод для числовых данных в R

Mine Cetinkaya-Rundel

Associate Professor of the Practice, Duke University

Постановка задачи

  • Исследовательский вопрос: помогает ли лечение эмбриональными стволовыми клетками восстановить функцию сердца после инфаркта эффективнее традиционной терапии?

  • Данные: набор stem.cell из пакета openintro

library(openintro)
data(stem.cell)
   trmt   before   after 
1  ctrl    35.25   29.50
2  ctrl    36.50   29.50
3  ctrl    39.75   36.25
   ...      ...     ... 
n  esc     53.75   51.00
Статистический вывод для числовых данных в R

План анализа

Шаг 1. Вычислите change для каждой овцы: разность между показателями насосной функции сердца до и после лечения.

   trmt   before   after   change 
1  ctrl    35.25   29.50   ?
2  ctrl    36.50   29.50   ?
3  ctrl    39.75   36.25   ?
   ...      ...     ...   
n  esc     53.75   51.00   ?
Статистический вывод для числовых данных в R

План анализа

Шаг 2. Сформулируйте гипотезы:

$H_0: \mu_{esc} = \mu_{ctrl}$; Среднее изменение в группах лечения и контроля одинаково.

$H_A: \mu_{esc} > \mu_{ctrl}$; Среднее изменение в группе лечения выше, чем в контрольной группе.

Статистический вывод для числовых данных в R

План анализа

Шаг 3. Проведите проверку гипотезы.

  • Запишите значения change на 18 карточках.
  • (1) Перемешайте карточки и случайно разделите на две равные колоды: лечение и контроль.
  • (2) Вычислите и запишите тестовую статистику: разность средних значений change между группами.
  • Повторяйте (1) и (2) многократно для построения выборочного распределения.
  • Вычислите p-значение как долю симуляций, где тестовая статистика не менее экстремальна, чем наблюдаемая разность средних.
Статистический вывод для числовых данных в R

Проверка гипотезы: генерация повторных выборок

Используйте пакет infer для проведения теста:

library(infer)
Статистический вывод для числовых данных в R

Проверка гипотезы: генерация повторных выборок

Начните с фрейма данных и укажите модель:

library(infer)

diff_ht_mean <- stem.cell %>%
  specify(__) %>%                    # y ~ x
  ...
Статистический вывод для числовых данных в R

Проверка гипотезы: генерация повторных выборок

Задайте нулевую гипотезу — отсутствие разности средних:

library(infer)

diff_ht_mean <- stem.cell %>%
  specify(__) %>%                    # y ~ x
  hypothesize(null = __) %>%         # "independence" or "point"
  ...
Статистический вывод для числовых данных в R

Проверка гипотезы: генерация повторных выборок

Сгенерируйте повторные выборки при условии истинности $H_0$:

library(infer)

diff_ht_mean <- stem.cell %>%
  specify(__) %>%                    # y ~ x
  hypothesize(null = __) %>%         # "independence" or "point"
  generate(reps = __, type = __) %>% # "bootstrap", "permute", or "simulate"
  ...
Статистический вывод для числовых данных в R

Проверка гипотезы: генерация повторных выборок

Вычислите тестовую статистику:

library(infer)

diff_ht_mean <- stem.cell %>%
  specify(__) %>%                    # y ~ x
  hypothesize(null = __) %>%         # "independence" or "point"
  generate(reps = _N_, type = __) %>%# "bootstrap", "permute", or "simulate"
  calculate(stat = "diff in means")  # type of statistic to calculate
Статистический вывод для числовых данных в R

Проверка гипотезы: вычисление p-значения

Вычислите p-значение как долю симуляций, в которых смоделированная разность средних не менее экстремальна, чем наблюдаемая

$$P ((\bar{x}_{esc,sim} - \bar{x}_{ctrl,sim}) \ge (\bar{x}_{esc,obs} - \bar{x}_{ctrl,obs}))$$

Статистический вывод для числовых данных в R

Давайте потренируемся!

Статистический вывод для числовых данных в R

Preparing Video For Download...