У меня есть dataframe (NBA_Data), который составляет 27 538 на 29. Один из столбцов называется «месяц», и есть восемь месяцев (октябрь: июнь). Я хотел бы написать функцию, которая автоматически подмножает этот кадр данных по месяцам, а затем создает 8 сюжетных объектов в ggplot2. Я выхожу из своей глубины здесь, но я думаю, что они будут храниться в одном списке («Мои сюжеты»).Функция создания нескольких графиков подмножествами фрейма данных
Я планирую использовать geom_plot для каждого сюжетного объекта для построения точек против минут. Я не знаком с grid.arrange, но я предполагаю, что когда у меня есть «Мои сюжеты», я мог бы использовать это (в некоторой форме) в качестве аргумента для grid.arrange.
Я пробовал:
empty_list <- list()
for (cat in unique(NBA_Data$month)){
d <- subset(NBA_Data, month == cat)
empty_list <- c(empty_list, d)
}
Это дает непрерывный список, который повторяет все 29 столбцов для каждого месяца, с длиной 261. Не идеальный, но работоспособной может быть. Затем я пытаюсь использовать lapply, чтобы разбить список, но я его испортил.
lapply(empty_list, split(empty_list, empty_list$month))
Error in match.fun(FUN) :
'split(x = empty_list, f = empty_list$month)' is not a function, character or symbol
In addition: Warning message:
In split.default(x = empty_list, f = empty_list$month) :
data length is not a multiple of split variable
Любые предложения? Спасибо.
10 facet_wrap! красивая ! –