#r #function #for-loop #data-manipulation
Вопрос:
Я пытаюсь преобразовать цикл for в функцию для сводной статистики группы на основе c("country", "continent")
. Любая помощь будет признательна, заранее большое спасибо.
library(gapminder) library(purr) cont lt;- unique(gapminder$continent) df lt;- NULL temp lt;- NULL for(i in 1:(length(cont))) { temp lt;- gapminder[gapminder$continent == cont[i], ] #df[[i]] lt;- temp df[[i]] lt;- temp %gt;% split(.$continent) %gt;% map(summary) } df
Ожидаемый Ответ
my.function(gapminder, c("country", "continent"))
Комментарии:
1. Ваш цикл for правильный? В нем не упоминается страна
Ответ №1:
Как насчет dplyr
purrr
решения a и?
library(dplyr) library(tidyr) gapminder %gt;% group_by(country, continent) %gt;% group_split(.keep = TRUE) %gt;% map(summary)