我试图使用lmer函数来创建一个最小的适当模型。我的模型是匹配的~*尝试*状态+(随机因素)。
as.logical(Mated)
as.numeric(Size)
as.factor(Attempts)
as.factor(Status)(这些都在以前的模型上工作过)
所以在我试着运行我的模型之后:
Model1<-lmer(Mated ~ Size*Status*Attempts + (1|FemaleID),data=mydata)只有当我尝试应用这个更新时,它才会出错:
Model2<-update(Model1, REML=FALSE)以下是提供的错误消息:
fn(x,.)中的错误:向下的VtV不是正定的
如果我做了第三种模型,没有交互作用,并且在它和模型一之间做了一个方差分析,那么它说这两者有很大的不同。
Model3<-update(Model1,~.-Size:Status:Attempts
anova(Model1,Model3)我做错了什么?三种方式的互动真的很重要吗?还是我犯了什么错误?
谢谢
发布于 2015-01-20 21:38:37
如果Mated是二进制的,那么您可能应该使用带有logit或probit链接函数的glmer,如下所示:
model <- glmer(Mated ~ Size * Status * Attempts + (1|FemaleID),
data = mydata, family = binomial)如果您能够让我们知道您的数据是什么样子(head(mydata)可能很好,或者看看here如何制作一个可重复的示例),这会有帮助。
此外,我将避免使Mated变得合乎逻辑(请参阅this question and answer,以了解它如何使您的生活更加困难)。相反,as.factor(Mated)将显式地使您的响应变量离散。
之后,您可以将您的完整模型和简化模型与anova()进行比较。
https://stackoverflow.com/questions/27990948
复制相似问题