r - 将一系列回归的结果依次存储到数据框中

标签 r function regression

假设我想运行一系列回归,如下所示:

summary(lm(mpg ~ cyl, data = mtcars))
summary(lm(mpg ~ disp, data = mtcars))
summary(lm(mpg ~ wt, data = mtcars))

我想创建一个数据框,其中包含每个输出的估计值和标准误差,最好包含变量名称。所以最终的输出应该是这样的:

Variable  Beta  Coeff
cyl       -2.8  .32
disp      -.04  .004
wt        -5.3  .56

我认为它需要一个函数。有什么想法吗?

最佳答案

一种简单的方法是使用 tidyverse 中的 purrrbroom 包。

library(purrr)
library(broom)
cols <- c("cyl", "disp", "wt")

map_df(cols, ~lm(reformulate(.x, "mpg"), data=mtcars) %>% tidy())
#   term        estimate std.error statistic  p.value
#   <chr>          <dbl>     <dbl>     <dbl>    <dbl>
# 1 (Intercept)  37.9      2.07        18.3  8.37e-18
# 2 cyl          -2.88     0.322       -8.92 6.11e-10
# 3 (Intercept)  29.6      1.23        24.1  3.58e-21
# 4 disp         -0.0412   0.00471     -8.75 9.38e-10
# 5 (Intercept)  37.3      1.88        19.9  8.24e-19
# 6 wt           -5.34     0.559       -9.56 1.29e-10

这为您提供了一些额外的信息,但如果您愿意,您可以使用 dplyr 轻松过滤掉它。

关于r - 将一系列回归的结果依次存储到数据框中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55910303/

相关文章:

r - 如何使用 R 复制数据帧的每个子组的第一行?

r - 在 rpart 中使用 minsplit 和不等权重

arrays - PowerShell从函数返回单个元素数组

c - 错误 : syntax error before 'double'

algorithm - 回归目标导向行动计划

machine-learning - 相关变量的套索或岭

r - 将数据框转换为矩阵

r - 如何将R ggplot图形存储为html代码段

list - 如何将函数应用于列表的两个元素 - Haskell

tensorflow - 为不平衡数据加权回归CNN?