Вопрос или проблема
У меня есть линейная смешанная модель в R с использованием пакета lmerTest
, где есть три категориальных фактора (A с 3 уровнями, B с 8 уровнями и C с 2 уровнями) и случайный эффект для Испытуемого. Я заинтересован в проведении анализа мощности с помощью simr
для двух конкретных запланированных контрастов между уровнями B. Это возможно?
Например, мы обозначаем уровни 1, 2, 3, 4 фактора B как B1, B2, B3 и B4 соответственно, а A1 как уровень 1 фактора A. Нам нужна мощность для следующих контрастов.
- Сравнить B1 и B2, и сравнить B3 и B4, контролируя все другие переменные (если модель не содержит взаимодействий)
- Сравнить B1 и B2, и сравнить B3 и B4 на конкретном уровне A A2 (если учитывать взаимодействие между A и B)
Я понимаю, что simr
может смоделировать мощность и размер выборки для всех фиксированных эффектов в модели, так что мы можем сравнить B1 со всеми другими уровнями B, установив уровень B по умолчанию на B1. Но я не уверен, как это настроить для вычисления мощности для вышеупомянутых конкретных контрастов. Я также знаю, что emmeans
может настраивать и вычислять пост-хок контрасты, но существует ли способ интегрировать это с simr
для анализа мощности и размера выборки? Если нет, то каковы соответствующие способы это сделать?
Может кто-то поделиться опытом моделирования мощности и размера выборки для этих запланированных контрастов с использованием simr
?
Ответ или решение
Для проведения анализа мощности и определения размера выборки для запланированных контрастов в линейных смешанных моделях с использованием пакета simr
в R, можно следовать следующему алгоритму.
1. Установка необходимых пакетов
Убедитесь, что у вас установлены и загружены следующие пакеты:
install.packages("lmerTest")
install.packages("simr")
install.packages("emmeans")
library(lmerTest)
library(simr)
library(emmeans)
2. Построение линейной смешанной модели
Создаем линейную смешанную модель с фиксированными эффектами для факторов A, B и C, а также случайным эффектом для субъекта:
model <- lmer(response ~ A * B * C + (1 | Subject), data = your_data)
Если у вас нет взаимодействия между факторами A и B, модель будет:
model <- lmer(response ~ A + B + C + (1 | Subject), data = your_data)
3. Определение контрастов для анализа мощности
Что касается ваших запланированных контрастов, требуется выполнить следующие действия:
3.1. Контрасты без взаимодействия
Для первого случая, где мы хотим сравнить B1 и B2, и B3 и B4, можно воспользоваться функцией contrast
из пакета emmeans
для контроля за другими переменными:
# Создание эммесов
emm <- emmeans(model, ~ B)
# Определение контрастов
contrast1 <- contrast(emm, "pairwise", which = c("B1", "B2"))
contrast2 <- contrast(emm, "pairwise", which = c("B3", "B4"))
3.2. Контрасты с взаимодействием
Во втором случае, если вы хотите сравнить те же уровни B, но при фиксированном уровне A2, вы можете использовать следующие команды:
# Эммесы для уровня A2
emm_A2 <- emmeans(model, ~ B | A)
contrast_A2_1 <- contrast(emmeans(model, ~ B | A2), "pairwise", which = c("B1", "B2"))
contrast_A2_2 <- contrast(emmeans(model, ~ B | A2), "pairwise", which = c("B3", "B4"))
4. Расчёт мощности с использованием simr
Теперь мы можем использовать пакет simr
для расчёта мощности. Сначала необходимо определить размер выборки, который вы хотите протестировать. Это делается с помощью функции powerSim
:
# Для без взаимодействий
power_result1 <- powerSim(model, test = fixed("B"), nsim = 100)
summary(power_result1)
# Для с взаимодействием
# Убедитесь, что модель использует правильный EMMeans
power_result2 <- powerSim(model, fixed("A:B"), nsim = 100)
summary(power_result2)
5. Определение размера выборки
Чтобы определить необходимый размер выборки для заданной мощности, используйте функцию h2
из simr
с вашими контрастами.
Вот как это можно сделать:
# Для без взаимодействий
size_result1 <- determineSize(model, power = 0.80, fixed("B1", "B2"), nsim = 100) # 80% мощность
summary(size_result1)
# Для ситуации с взаимодействием
size_result2 <- determineSize(model, power = 0.80, fixed("A:B1", "A:B2"), nsim = 100) # 80% мощность
summary(size_result2)
Заключение
Теперь у вас есть четкое руководство по проведению анализа мощности и определению размер выборки для запланированных контрастов в линейных смешанных моделях используя simr
и emmeans
. Не забывайте, что важно правильно интерпретировать результаты анализа мощности и корректно выбирать необходимые параметры для вашей исследовательской задачи.