Проблемы парциальных сравнений во вложенных факторах - PullRequest
0 голосов
/ 23 апреля 2020

Это набор данных, в который неделя вложена в период, это становится проблематичным c, когда я хочу увидеть парные сравнения между диетой и неделей. Что означает ошибка «Попробуйте извлечь вложенные факторы из« по ».» жадный?

form <- as.formula(paste(colnames(df)[8],'~ Diet  + period +week*Diet +(1|id)')) #get data for interactions
    dflmer <- lmer(form, data=df)
    a <- Anova(dflmer, type=3) 
    library(emmeans)
    emm <- emmeans(dflmer, pairwise ~ Diet | week) 

    NOTE: A nesting structure was detected in the fitted model:
  week %in% period
Note: Grouping factor(s) for 'week' have been added to the 'by' list.
Error in .nested_contrast(rgobj = object, method = method, by = by, adjust = adjust,  : 
                            There are no factor levels left to contrast. Try taking nested factors out of 'by'.

1 Ответ

1 голос
/ 23 апреля 2020

Так как неделя вложена в период, вы не можете подготовить неделю без подготовки периода. Попробуйте

emmeans(dflmer , pairwise ~ Diet | period:week)

В самой последней версии 1.46 emmeans это исправлено, поскольку в старых версиях не учитывалась возможность вложения переменных by.

Приложение

Я думаю, что некоторые детали запомнились неправильно. Код, который генерирует это сообщение об ошибке, был не на месте в версиях <= 1.4.5. Я думаю, что вам может понадобиться установить версию 1.4.6, чтобы заставить это работать. См. <a href="https://github.com/rvlenth/emmeans/issues/186" rel="nofollow noreferrer"> отчет о связанных проблемах

Приложение 2

Я создал аналогичный пример и до сих пор получаю ошибки от этой модели. Проблема в том, что week вложен в period, а модель имеет Diet, пересекающуюся с week, но не с period, что не имеет смысла. Я смог получить результаты после того, как установил модель с фиксированным эффектом Diet*(period + week)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...