使用 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"
我有大量通过引用右侧变量指定的回归模型,我想使用 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"