将 lapply 列表转换为数据框

turning a lapply list into a dataframe

我正在使用以下代码 运行 记录回归,将“i”替换为一堆 pre-specified 变量。

fits <- lapply(vars, function(x) {glm(substitute(outcome ~ staticPredictor + i, 
        list(i = as.name(x))), family=binomial, data = data)})

我能够打印出带系数的列表和 p-values,但我希望将这些列表转换为具有以下标题的数据框:

[modelname] [staticPredictor coefficient] [i coefficient] [staticPredictor p-value] [i p-value].

这是我目前能够填充的列表的代码

coeffs <- lapply(fits, coefficients) 
pvals <- sapply(fits, function(f) summary(f)$coefficients[,4])

谢谢!!!!

我们可以使用 tidy 来自 broom

library(purrr)
library(broom)
map_dfr(fits, tidy)