Я создал пользовательскую функцию, которая может отображать гистограммы с помощью пакета ggplot2
. Я хочу перебрать каждый столбец фрейма данных, чтобы получить гистограмму для каждого.
library(tidyverse)
#Making function to facilitate variable iteration. Supply data frame and single variable name
histogram_fun = function(df = model_data, x = "variable_name") {
ggplot(df, aes(x = .data[[x]] )) +
geom_histogram() +
labs(x = x)
}
Когда я пытаюсь histogram_fun(gss_cat, "age")
, я получаю ожидаемую гистограмму. Однако, если бы я хотел перебрать переменные year
, age
и tvhours
, я бы попробовал что-то вроде этого, но безрезультатно:
gss_numeric <- gss_cat %>% select_if(is.numeric) %>% names
gss_numeric
#> [1] "year" "age" "tvhours"
gss_cat %>% select(gss_numeric) %>% map(histogram_fun(df = ., x = gss_numeric))
#> Can't convert a `gg/ggplot` object to function
Как бы я перебрал моюправильный выбор с использованием функций map
или walk
?
Создан в 2019-10-08 пакетом Представить (v0.3.0)