我尝试使用stargazer来格式化nlme包中lmList函数的输出。如果我手动索引每个列表元素,就可以让stargazer工作,但如果我只传递完整的列表给stargazer,就不行了。对于如何让stargazer识别lmList输出,有什么建议吗?
library(nlme)
library(stargazer)
data("iris")
m <- lmList(Sepal.Length ~ Sepal.Width | Species, data = iris)
stargazer(m, type = "text") # "% Error: Unrecognized object type.
stargazer(m[[1]], m[[2]], m[[3]], type = "text")发布于 2018-11-18 09:00:33
您需要将所有参数打包为一个列表,然后让stargazer接受一个参数列表。执行此操作的神奇函数是do.call。
do.call的第一个参数是函数,第二个参数是在第一个参数中传递给该函数的参数列表。
所以像这样的东西应该是有效的:
do.call(stargazer, c(m, type = "text"))另外仅供参考,do.call的整形版本是invoke,所以这是相同的。
invoke(stargazer, c(m, type = "text"))Invoke会更好,因为您可以传递额外的参数(如上面的类型),而无需将它们放入列表中。
https://stackoverflow.com/questions/53334807
复制相似问题