GLMER: ошибка: (maxstephalfit) разделение на шаги PIRLS не смогло уменьшить отклонение в pwrssUpdate

Я изучаю влияние различных характеристик на решение суда по конкретным преступлениям. Набор данных довольно большой (28928 наблюдений с 86 единицами уровня 2). Я смотрю на решение, заключать ли кого-либо в тюрьму или нет (= бинарная переменная результата), используя характеристики уровня 1 и уровня 2 в качестве контроля (уровень 1 указан в столицах).

Это мой код:

MLmodel196a_2 <- glmer(NEPO_ANO_NE ~ 
                     OZNACENY_RECIDIVISTA_REG + POCET_DRIV_ODSOUZENI_REG +
                     ROK_ODSOUZENI_REG + OMEZENI_A_POVINNOST_REG +
                     POCET_HLAVNICH_LICENI + DRUH_ZAHAJENI_RIZENI_REG + 
                     NOVELA_REG + ODSTAVEC_REG +
                     EU_OBCANSTVI + POHLAVI_REG + VEK_SPACHANI_REG +

                     objasnenost_procenta + kriminalita_relativni_REG +
                     venkov_mesto + socialni + nezamestani_celkem + 
                     vzdelani_zakladni_procenta +
                     prumerny_vek + podil_15az24_muzu_procenta +
                     zenati_vsichni_procenta + 
                     verici_procenta + volby_ucast +
                     (1 | Nazev_soudu), family = binomial, data = vyber196) 

Когда я запускаю это, я получаю эту ошибку:

Error: (maxstephalfit) PIRLS step-halvings failed to reduce deviance in pwrssUpdate

Если я проведу этот анализ для другого набора данных (другое нарушение), он выдаст результаты с несколькими предупреждениями. Если я запускаю этот набор данных только с управляющими переменными уровня 1, он снова выдает результаты с несколькими предупреждениями.

Большинство переменных уровня 1 являются категориальными, все переменные уровня 2 являются непрерывными (не масштабируются).

К сожалению, я не могу предоставить какие-либо данные, так как данные были предоставлены правительством при таких условиях.

Я не понимаю, почему это происходит только для этого преступления, а не для других преступлений. Есть ли способ обойти это?

(lme4 версия 1.1-12, версия R 3.3.1)

1 ответ

Решение

После удаления одной непрерывной переменной все получилось. Непрерывной переменной было количество слушаний по делу, и в большинстве случаев оно было равно нулю. Поскольку невозможно заключить в тюрьму кого-либо без слушания, он, вероятно, испортил процесс, так как был квази-разделен. Большинство предупреждений было окончательно решено с использованием масштабирования и перезапуска подгонки от исходного значения (п. 1 и 4 в примерах в "конвергенции" - спасибо за это!).

Другие вопросы по тегам