首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误消息: fn(x,.)中的错误:向下的VtV不是正定的

错误消息: fn(x,.)中的错误:向下的VtV不是正定的
EN

Stack Overflow用户
提问于 2015-01-16 19:01:12
回答 1查看 9.2K关注 0票数 4

我试图使用lmer函数来创建一个最小的适当模型。我的模型是匹配的~*尝试*状态+(随机因素)。

代码语言:javascript
复制
as.logical(Mated)
as.numeric(Size)
as.factor(Attempts)
as.factor(Status)

(这些都在以前的模型上工作过)

所以在我试着运行我的模型之后:

代码语言:javascript
复制
Model1<-lmer(Mated ~ Size*Status*Attempts + (1|FemaleID),data=mydata)

只有当我尝试应用这个更新时,它才会出错:

代码语言:javascript
复制
Model2<-update(Model1, REML=FALSE)

以下是提供的错误消息:

fn(x,.)中的错误:向下的VtV不是正定的

如果我做了第三种模型,没有交互作用,并且在它和模型一之间做了一个方差分析,那么它说这两者有很大的不同。

代码语言:javascript
复制
Model3<-update(Model1,~.-Size:Status:Attempts
anova(Model1,Model3)

我做错了什么?三种方式的互动真的很重要吗?还是我犯了什么错误?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2015-01-20 21:38:37

如果Mated是二进制的,那么您可能应该使用带有logit或probit链接函数的glmer,如下所示:

代码语言:javascript
复制
model <- glmer(Mated ~ Size * Status * Attempts + (1|FemaleID), 
data = mydata, family = binomial)

如果您能够让我们知道您的数据是什么样子(head(mydata)可能很好,或者看看here如何制作一个可重复的示例),这会有帮助。

此外,我将避免使Mated变得合乎逻辑(请参阅this question and answer,以了解它如何使您的生活更加困难)。相反,as.factor(Mated)将显式地使您的响应变量离散。

之后,您可以将您的完整模型和简化模型与anova()进行比较。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27990948

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档