2016-12-17 18 views
0

Я бегу смешанная модель на что-то похожее на эти данные:фактор в смешанной модели

df<-data.frame(stage=c("a","a","a","a","b","b","b","b","c","c","c","c"), 
nematode=c("fn","fn","bn","bn","fn","fn","bn","bn","fn","fn","bn","bn"), 
id2=c(1,2,3,4,1,2,3,4,1,2,3,4), 
value=c(1,0,0,2,3,1,1,2,0,0,0,2)) 

Модель Я пытаюсь подгонка:

stage.id <- function(x) round(summary(glmer(value ~ stage + (1 | id2),family="poisson", data = x))$coefficients[2, c(1, 2, 4)], 3) 
models.id0 <- ddply(tree2, .(stage, nematode), stage.id) 

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

Error in contrasts<- (*tmp* , value = contr.funs[1 + isOF[nn]]) : contrasts can be applied only to factors with 2 or more levels

, который не имеет смысла для меня, учитывая, что я использовал NLEVELS() команду на каждом из фактора s (df $ stage и df $ нематода), и они равны 3 и 2 соответственно. Есть ли смысл в том, что может быть ошибкой?

ответ

3

Вы stage как фиксированный эффект в модели, но вы пытаетесь подобрать модель для каждой комбинации stage и nematode (ddply(tree2, .(stage, nematode), ...)). Таким образом, в каждом фрагменте данных есть только одно значение stage, которое вызывает ошибку.

Вы можете:

  • применяются только по nematode значений, т.е. ddply(tree2,.(nematode), ...)
  • оставить stage из вашей модели, то есть соответствовать моделям value ~ 1 + (1 | id2)

Согласно вашему комментарию ("моя цель состоит в том, чтобы сравнивать этапы для каждого из типов нематод. Т.е. для каждого типа нематод (например, bn) этапы отличаются друг от друга »), вы хотите, чтобы прежнее решение (применимо только к nematode).

+0

Должен сказать, что моя цель - сравнить этапы для каждого типа нематод. Например, для каждого типа нематод (например, bn) этапы различаются. Кажется, что одно из ваших предложений дает одинаковые результаты. Я считаю, что они позволят мне определить, существенно ли разные этапы для каждого типа нематод, но есть ли способ провести какой-либо пост-часовой сравнительный тест, чтобы выяснить, какие этапы различаются для каждого типа нематод? Благодарю. – elduderino260

+0

На самом деле, я думаю, что получил: bn <-subset (df, nematode == "bn") bn.mod <-glmer (значение ~ stage + (1 | id2), family = "poisson", data = bn) bn.tuk <-glht (bn.mod, mcp (stage = "Tukey")) summary (bn.tuk) tuk.cld <- cld (bn.tuk) # буквенный дисплей opar <- par (mai = c (1,1,1,5,1)) plot (tuk.cld) par (opar) – elduderino260

+0

Но если я это сделаю, тогда мои сравнительные тесты обнаруживают существенные различия в нематодах между этапами для нематод. смешанная модель не находилась существенно иной. То есть, смешанная модель обнаружила, что bn не отличается между этапами (p = 0,34), тогда как если я запускаю постходовой тест Tukey, он обнаруживает значительные различия (p <0,01) ... Это говорит о том, что это больше вопрос for Cross Validated ... – elduderino260

 Смежные вопросы

  • Нет связанных вопросов^_^