使用 purrr 将右侧变量映射到回归函数

Using purrr to map right-hand-side variables to regression functions

我有大量通过引用右侧变量指定的回归模型,我想使用 purrr 生成一组包含这些模型的列表。下面是使用玩具数据的预期最终结果示例:

m.1.1 <- "cyl"
m.1.2 <- paste(c(m.1.1, "disp"), collapse = " + ")


m.1.1_reg <- lm(
  data = mtcars,
  formula = as.formula(paste0("mpg ~ ", m.1.1)))


m.1.2_reg <- lm(
  data = mtcars,
  formula = as.formula(paste0("mpg ~ ", m.1.2)))

如何使用 purrr 实现相同的结果(即一个名为 m.1.1_reg 的列表和另一个名为 m.1.2_reg 的列表)?

只需遍历 map 中的 'm.1.' 个对象并创建公式

library(purrr)
out <- map(dplyr::lst(m.1.1, m.1.2), 
    ~ lm(data = mtcars, formula = as.formula(paste0("mpg ~ ", .x))))

-检查名称

> names(out)
[1] "m.1.1" "m.1.2"