提供以下类型的功能:
library(tidyverse)
make_plot <- function(var) {
quo_var <- enquo(var)
ggplot(mtcars, aes(x = !!quo_var, y = mpg)) +
geom_point()
}
我想在data.frame的各个列上这样调用:
make_plot(hp)
make_plot(am)
...
但是为了使代码保持干燥,我想使用purrr::map
或purrr::walk
,但以下操作无效:
list(hp, am) %>%
map(make_plot)
我也尝试过list("hp", "am") %>% map(make_plot(sym(.))
,该方法也不起作用。在这里使用字符串或变量列表的正确方法是什么?