我曾经MuMIn::model.avg
对几个模型进行平均*,我对绘制条件(非完整)模型平均值的预测结果很感兴趣。我尝试了ggeffects::ggpredict
和sjPlot::plot_model
,并且都只给出了完整的模型结果。我可以得到预测的估计值predict()
,它可以选择是使用完整模型还是条件模型(full = False
用于条件模型)。但是,如果我声明se.fit = True
要获得标准错误,那么我会收到一条警告说'argument 'full' is ignored',它会预测完整模型的结果。我也尝试使用emmeans
以下这个答案,但它也使用完整模型。
*同样的问题出现在简单的线性 ( lm
) 和广义 ( glm
) 模型中。
有没有办法从条件平均模型及其 SE 或 CI 中获得预测结果?或者甚至更好,一种绘制它们的方法?
我不确定我的问题是统计问题(即我要问的问题不能统计完成)还是 R 问题。我希望这是第二个,但如果是第一个,我会很感激解释。
我没有添加数据,因为我认为它不相关,但如果需要,我可以这样做。所有解释变量都是因子(如您在我的 NewData 数据框中所见)。
这是我尝试的几行代码:
m1 <- lm(A ~ B*C + d, data=df, na.action="na.fail")
dd1 <- dredge(m1, subset=Origin)
m1.avg <- model.avg(dd1, fit=TRUE)
plot_model(m1.avg, type="pred", terms=c("B", "C", "d"))
NewData <- data.frame(B=c(rep(c("b1", "b2"), 6)),
D=c(rep("d1", 6), rep("d2", 6)),
C=c(rep(c("C1", "C1", "C3", "C3", "C5", "C5"), 2)))
cbind(NewData, pre=predict(m1.avg, newdata=NewData, full=F, se.fit=T))