0

我正在处理一个大型数据集,并使用 R 包 lme4 使用线性混合效应模型分析连续因变量。我还使用了扩展 lmerTest,它允许计算各种图以及与固定和随机项相关的 p 值。

当我运行rand()以获取与每个随机项关联的 p 值时,我得到以下错误:

Error in anova.merMod(object = object, ... = ...) : models were not all fitted to the same size of dataset

这是因为我的随机项之一包含缺失值,而其他项则没有。

我的问题是:在rand函数中,我该如何处理数据集大小的差异?是否有允许自动省略 NA 的参数?我试图查看该功能的帮助页面,但文档非常有限。

谢谢!

4

1 回答 1

1

这是一个使用包中数据示例的示例lmerTest。在示例中,我们希望运行此代码

library(lmerTest)
m <- lmer(Preference ~ sens2+Homesize+(1+sens2|Consumer), data=carrots)
rand(m)

首先,我们确定哪些变量可用于最大的模型。我使用tidyverse下面的管道和函数,但你可以对with. 完整模型中的所有变量都应包含在此处

cc <- carrots %>% select(Preference, sens2, Homesize, Consumer) %>% complete.cases()

cc现在包含一个逻辑向量,其中的行包含完整的观察集。这些是我们应该在整个分析过程中使用的。subset我们通过添加参数来确保这是真的

m <- lmer(Preference ~ sens2+Homesize+(1+sens2|Consumer), subset=cc, data=carrots)
于 2017-07-18T00:28:21.090 回答