Я пытаюсь использовать lme4::glmer()
для подгонки биномиальной обобщенной смешанной модели (GLMM) с зависимой переменной, которая является не двоичной, а непрерывной переменной от нуля до единицы. Можно думать об этой переменной как о вероятности; на самом деле это вероятность того, как сообщили человеческих субъектов (в эксперименте , который я помочь анализирующего). Т.е. это не «дискретная» дробь, а непрерывная переменная.
Мой glmer()
звонок не работает должным образом (см. Ниже). Почему? Что я могу сделать?
Позже редактирование: мой ответ ниже является более общим, чем оригинальная версия этого вопроса, поэтому я изменил вопрос, чтобы он также был более общим.
Подробнее
По-видимому, можно использовать логистическую регрессию не только для двоичного DV, но также и для непрерывного DV от нуля до единицы. Действительно, когда я бегу
glm(reportedProbability ~ a + b + c, myData, family="binomial")
Я получаю предупреждение
Warning message:
In eval(expr, envir, enclos) : non-integer #successes in a binomial glm!
но очень разумное соответствие (все факторы являются категориальными, поэтому я могу легко проверить, близки ли предсказания модели к средним показателям по всем предметам, и они есть).
Однако то, что я на самом деле хочу использовать,
glmer(reportedProbability ~ a + b + c + (1 | subject), myData, family="binomial")
Это дает мне то же самое предупреждение, возвращает модель, но эта модель явно не в порядке; оценки фиксированных эффектов очень далеки от оценок glm()
и от средних по предмету. (И мне нужно включить glmerControl(optimizer="bobyqa")
в glmer
вызов, иначе он вообще не сходится.)
glmmadmb(reportedProbability ~ a + b + c + (1 | subject), myData, family="beta")
, я получаю правильную подгонку и разумные доверительные интервалы, но предупреждение о сбое сходимости : - / Попытка выяснить, как увеличить количество итераций. Бета может работать на меня, потому что у меня нет случаев DV = 0 или DV = 1.
+ (1 | rowid)
к своему вызову glmer, и это дает стабильные оценки и стабильные доверительные интервалы, независимо от моего выбора веса (я пробовал 100 и 500). Я также попытался запустить lmer на logit (reportsProbability), и я получил почти точно то же самое. Таким образом, оба решения работают хорошо! Бета-версия MM с glmmadmb также дает очень близкие результаты, но по какой-то причине не может полностью сходиться и работает вечно. Подумайте о том, чтобы опубликовать ответ, перечисляющий эти варианты и объяснив немного различия и плюсы / минусы! (Все доверительные интервалы, о которых я упоминаю, - это Вальд.)