【发布时间】:2015-03-09 20:21:55
【问题描述】:
我正在尝试从MuMIn 中提取两个不同的平均模型,以便通过texreg 或stargazer 输出到乳胶。我想要一张表,我可以在其中比较两个物种对不同非生物变量集的反应,这看起来与使用两个模型对象创建的表相同
glmtable <- texreg(list(m1, m2).
上述代码适用于 glm 对象,但不适用于在 MuMIn 中创建的平均模型对象。
我尝试按照https://sites.google.com/site/rforfishandwildlifegrads/home/mumin_usage_examples 的示例输出一个可以输出到latex 的文本表。
这是一个使用水泥数据的可重现示例:
library(MuMIn)
data(cement)
# full model
fm1 <- lm(y ~ ., data = Cement, na.action = na.fail)
# create and examine candidate models
(ms1 <- dredge(fm1))
# average models with delta AICc <5, include adjusted SE
MA.ests<-model.avg(ms1, subset= delta < 5, revised.var = TRUE)
这很好用。但是当我打电话时
MA.ests$avg.model
我得到>NULL。
是否已弃用 avg.model?还是有其他方法可以做到这一点?
我可以使用这三个调用中的任何一个来解决问题,但它们并不是我想要的。
coefTable(MA.ests)
coef(MA.ests)
modavg.table <- as.data.frame(summary(MA.ests)$coefmat)
(也就是说,我不知道如何在没有更多代码的情况下将这些对象放入 Latex 中。)
提前感谢您的任何建议。
【问题讨论】:
-
ms1是一个"model.selection"对象,您打算使用MA.ests由model.avg返回的"averaging"对象。此外,直接访问对象元素通常是个坏主意(内部对象结构可能会发生变化),请改用coefTable和confint等提取函数。 -
谢谢,@Kamil,我编辑了帖子——但是当我运行代码时仍然得到 NULL。有没有办法提取可以使用任何乳胶工具进行汇总的模型对象?
-
以前的
"avg.model"元素已重命名为"coefTable"(现在我注意到这在手册中没有体现)。获取汇总表的更安全方法可能是例如cbind(coefTable(x), confint(x)). -
为
model.selection对象编写 texreg 扩展应该很简单。您可能需要阅读 Journal of Statistical Software(更新版本:cran.r-project.org/web/packages/texreg/vignettes/v55i08.pdf)中 texreg 文章的第 6 节,了解如何执行此操作的详细信息。 -
好的!这看起来很有希望。也感谢 texreg 链接...我仍然在 r 上咬牙切齿,并且对第 6 节有点害怕,但是当我得到它时会坚持并在这里发布代码。再次感谢。
标签: r latex stargazer texreg mumin