Як я можу перевірити, чи є випадковий ефект вагомим?


34

Я намагаюся зрозуміти, коли використовувати випадковий ефект і коли це зайве. Мені сказали, як правило, якщо у вас є 4 або більше груп / осіб, які я роблю (15 окремих лосів). Деякі з цих лосів експериментували 2 або 3 рази протягом загальної кількості 29 випробувань. Я хочу знати, чи поводяться вони інакше, коли вони знаходяться в ландшафтах з вищим ризиком, ніж ні. Отже, я думав, що встановлю індивіда як випадковий ефект. Однак мені зараз кажуть, що немає потреби включати індивіда як випадковий ефект, оскільки у їхній відповіді не так багато варіацій. Я не можу зрозуміти, як перевірити, чи дійсно щось враховується при встановленні індивіда як випадкового ефекту. Можливо, початкове питання: Який тест / діагностику я можу зробити, щоб з'ясувати, чи є індивід хорошою пояснювальною змінною і чи повинен це бути фіксований ефект - qq-графіки? гістограми? розкидати сюжети? І що б я шукав у цих моделях.

Я запустив модель з індивідом як випадковий ефект і без, але потім прочитав http://glmm.wikidot.com/faq, де вони вказані :

не порівнюйте моделі lmer з відповідними lm-підходами або glmer / glm; ймовірності журналу не сумірні (тобто включають різні терміни добавки)

І тут я припускаю, що це означає, що ви не можете порівнювати модель з випадковим ефектом або без нього. Але я б не знав, на чому я все-таки повинен порівнювати їх.

У моїй моделі з ефектом Random я також намагався подивитися на результати, щоб побачити, який доказ чи значення має RE

lmer(Velocity ~ D.CPC.min + FD.CPC + (1|ID), REML = FALSE, family = gaussian, data = tv)

Linear mixed model fit by maximum likelihood 
Formula: Velocity ~ D.CPC.min + FD.CPC + (1 | ID) 
   Data: tv 
    AIC    BIC logLik deviance REMLdev
 -13.92 -7.087  11.96   -23.92   15.39
Random effects:
 Groups   Name        Variance Std.Dev.
 ID       (Intercept) 0.00000  0.00000 
 Residual             0.02566  0.16019 
Number of obs: 29, groups: ID, 15

Fixed effects:
              Estimate Std. Error t value
(Intercept)  3.287e-01  5.070e-02   6.483
D.CPC.min   -1.539e-03  3.546e-04  -4.341
FD.CPC       1.153e-04  1.789e-05   6.446

Correlation of Fixed Effects:
          (Intr) D.CPC.
D.CPC.min -0.010       
FD.CPC    -0.724 -0.437

Ви бачите, що моя дисперсія та SD від індивідуального ідентифікатора як випадковий ефект = 0. Як це можливо? Що означає 0? Це так? Тоді мій друг, який сказав: "оскільки не існує варіації з використанням ідентифікатора, оскільки випадковий ефект зайвий", це правильно? Отже, тоді я б використовував це як фіксований ефект? Але хіба факт того, що існує так мало варіацій, не означає, що він все одно не розповість нам багато про що?


Щодо отримання точної 0 відхилення випадкового ефекту див. Stats.stackexchange.com/questions/115090 .
амеба каже, що повернеться до Моніки

Відповіді:


21

Оцінка, IDдисперсія «s = 0, вказує на те, що рівень між групами мінливості не є достатнім , щоб гарантувати включення випадкових ефектів в моделі; тобто. ваша модель вироджена.

Як ви правильно ідентифікуєте себе: швидше за все, так; IDяк випадковий ефект є непотрібним. Небагато речей спадає на думку, щоб перевірити це припущення:

  1. Ви можете порівняти ( REML = Fзавжди використовуючи ) AIC (або ваш улюблений ІМ загалом) між моделлю з випадковими ефектами та без них, і побачити, як це відбувається.
  2. Ви б подивилися на anova()вихід двох моделей.
  3. Ви можете зробити параметричний завантажувальний інструмент, використовуючи задній розподіл, визначений вашою оригінальною моделлю.

Зрозуміло, що у виборах 1 і 2 виникає проблема: ви перевіряєте, чи є це на межі простору параметрів, так що насправді вони технічно не є надійними. Сказавши це, я не думаю, що ви отримаєте неправильну інформацію від них, і багато людей їх використовують (наприклад, Дуглас Бейтс, один з розробників lme4, використовує їх у своїй книзі, але чітко говорить про це застереження щодо тестування значень параметрів. на межі множини можливих значень). Вибір 3 - це найнаситніший із 3-х, але насправді дає найкращу ідею насправді про те, що відбувається. Деякі люди спокушаються також використовувати непараметричну завантажувальну програму, але я думаю, що враховуючи той факт, що ви робите параметричні припущення, щоб почати саме з вас, ви можете також їх використовувати.


6
Пакет RLRsim - це дійсно зручний спосіб перевірити випадкові ефекти за допомогою тестів на основі моделювання коефіцієнта ймовірності.
atrichornis

@atrichornis: +1. Цікавий пакет; Я про це не знав. Я просто подивився на його код, досить прямо, я можу сказати. Я б хотів, щоб вони включили його (або щось подібне), lme4особливо зараз, коли mcmcsamp()це порушено, і люди залишаються лише власними реалізованими спеціальними програмами завантаження, щоб отримати деякі пристойні p-значення тощо.
usεr11852 повідомляє Відновити Моніку

Правда, змішані моделі не є простими в Р. Багато наближень та обхідних шляхів ... Хоча я збираю SAS і т. Д. Просто обмацую деякі ті ж невизначеності? Бен Болкер є співавтором в обох пакетах, він може мати свої причини, щоб не включати його. Напевно, час!
atrichornis

4
Завантажувальна програма на межі простору параметрів має свій набір питань і проблем, що призводять до невідповідності . Завантажувальний пристрій не є панацеєю, і його не слід кидати в сумку, припускаючи, що воно все вирішить.
Стаск

2
Погляньте, аргумент дуже тонкий. Наскільки я можу пригадати, це зводиться до того, що ви робите завантажувальну систему з розподілу, відмінного від нуля; і з огляду на нестандартні розподіли, отримані на кордоні, умови регулярності порушуються, і розподіл завантажувальної передачі не сходить до цільового. Я думаю, що непараметричний завантажувальний механізм все ще може бути побудований тут, витягуючи групові засоби залишків. Однак при порушенні незалежності спостережень між групами може виникнути ще один шар ускладнень.
Стаск

3

Я не впевнений, що підхід, який я буду пропонувати, є розумним, тому ті, хто знає більше про цю тему, мене виправляють, якщо я помиляюся.

Моя пропозиція - створити додатковий стовпець у своїх даних, який має постійне значення 1:

IDconst <- factor(rep(1, each = length(tv$Velocity)))

Потім ви можете створити модель, яка використовує цей стовпець як ваш випадковий ефект:

fm1 <- lmer(Velocity ~ D.CPC.min + FD.CPC + (1|IDconst), 
  REML = FALSE, family = gaussian, data = tv)

На даний момент ви можете порівняти (AIC) свою оригінальну модель із випадковим ефектом ID(назвемо це fm0) з новою моделлю, яка не враховує, IDоскільки IDconstоднакова для всіх ваших даних.

anova(fm0,fm1)

Оновлення

user11852 просив прикладу, оскільки, на його думку, вищезазначений підхід навіть не буде виконуватись. Навпаки, я можу показати, що підхід працює (принаймні з тим, lme4_0.999999-0що я зараз використовую).

set.seed(101)
dataset <- expand.grid(id = factor(seq_len(10)), fac1 = factor(c("A", "B"),
  levels = c("A", "B")), trial = seq_len(10))
dataset$value <- rnorm(nrow(dataset), sd = 0.5) +
      with(dataset, rnorm(length(levels(id)), sd = 0.5)[id] +
      ifelse(fac1 == "B", 1.0, 0)) + rnorm(1,.5)
    dataset$idconst <- factor(rep(1, each = length(dataset$value)))

library(lme4)
fm0 <- lmer(value~fac1+(1|id), data = dataset)
fm1 <- lmer(value~fac1+(1|idconst), data = dataset)

anova(fm1,fm0)

Вихід:

  Data: dataset
  Models:
  fm1: value ~ fac1 + (1 | idconst)
  fm0: value ~ fac1 + (1 | id)

      Df    AIC    BIC  logLik  Chisq Chi Df Pr(>Chisq)
  fm1  4 370.72 383.92 -181.36                      
  fm0  4 309.79 322.98 -150.89 60.936      0  < 2.2e-16 ***

Відповідно до цього останнього тесту, ми повинні зберігати випадковий ефект, оскільки fm0модель має найнижчий AIC, а також BIC.

Оновлення 2

До речі, такий самий підхід запропонований Н. В. Голвей у «Вступі до змішаного моделювання: поза регресією та аналізом варіації» на сторінках 213-214.


Ви перевірили свою ідею? Будь ласка, доведіть мене неправильно, але я думаю, що ваша ідея навіть не здійсниться. Якщо значення IDconstоднакове для всіх ваших даних, то у вас немає групування. Вам потрібен коефіцієнт групування, щоб мати принаймні один рівень вибірки, а спосіб встановлення моделі його не має. Можливо, я можу повірити в обґрунтування використання "випадкового групування", але це спільна гра з м'ячем разом. Перевірте свій підхід за допомогою деяких підроблених даних. Я твердо вірю, що із запропонованими вами налаштуваннями lmer()не працюватиме. (Я використовую lme4_0.99999911-1)
usεr11852 повідомляє Відновити Моніку

@ user11852 Перегляньте моє оновлення та повідомте, чи працює цей підхід lme4_0.99999911-1.
VLC

Z

3
Так, я зробив те, що ви пропонуєте; він не буде працювати / обчислювати. Error in lFormula(formula = value ~ fac1 + (1 | idconst), data = dataset) : grouping factors must have at least 1 sampled level. І як я вже сказав, концептуально це неправильно. Справа в тому, щоб не обманювати програмне забезпечення, щоб дати деякі цифри, це питання, якщо ви вважаєте це розумним. У вас немає другої змішаної моделі, з якою можна порівняти, якщо в цій моделі випадковий ефект побудови є постійною. Ви можете також виключити його та спробувати лінійну модель.
usεr11852 повідомляє Відновити Монік

1
Оновити концертування, визначивши одну групову випадкову змінну в lme4. Це може бути зроблено , якщо ви встановите опцію: control=lmerControl(check.nlev.gtr.1="ignore"). Бен Болкер згадує це тут: github.com/lme4/lme4/isissue/411 .
Робін Бомонт

1

Я хотів би відповісти на більш "початкове" питання.

Якщо ви підозрюєте про різницю гетерогенності між залежною змінною через деякі фактори, вам слід заздалегідь скласти дані за допомогою графіків розкидання та поля. Деякі поширені зразки, на які слід перевірити, я подаю цей список нижче з різних джерел в Інтернеті.

Шаблони гетероскедастичності

Крім того, побудуйте свою залежну змінну за групами факторів / лікування, щоб побачити, чи є постійні дисперсії. Якщо ні, то ви можете вивчити випадкові ефекти або зважені регресії. Наприклад, наприклад. Дана діаграма нижче - приклад варіації воронкової форми у моїх групах лікування. Тому я вибираю випадкові ефекти і перевіряю ефекти на схилі та перехопленнях.

Boxplot для перевірки гетероскедастичності

Звідси відповіді вище стосуються вашого головного питання. Також є тести, які перевіряють наявність гетерокедастичності, один такий є тут - https://dergipark.org.tr/download/article-file/94971 . Але я не впевнений, чи існують якісь тести для виявлення гетерокедастичності на рівні групи.


Будь ласка, використовуйте лише поле "Ваша відповідь", щоб дати відповіді на питання ОП. Резюме - це суворий сайт з питань запитання, а не дискусійний форум. Остання, напівжирна частина вашого допису - це нове запитання, а не відповідь на це питання. Якщо у вас є нове запитання, натисніть сірий ASK QUESTIONвгорі і задайте його там. Оскільки ви тут новачок, ви можете скористатися нашою екскурсією , де є інформація для нових користувачів.
gung - Відновіть Моніку
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.