dplyr: поместите количество вхождений в новую переменную [duplicate]
На этот вопрос уже есть ответ:
Подсчет количества наблюдений / строк на группу и добавление результата во фрейм данных 9 ответов Хотелось бы получить руку к коду dplyr, но не могу понять это. Видел подобную проблему, описанную здесь для многих переменных Суммирующий счет фактора с dplyr а также Постановка подсчёта значений значений в новые переменные, как это сделать в R с помощью dplyr?), однако моя задача несколько меньше.
Дайте фрейм данных, как мне посчитать частоту переменной и поместить ее в новую переменную.
set.seed(9)
df <- data.frame(
group=c(rep(1,5), rep(2,5)),
var1=round(runif(10,1,3),0))
Тогда у нас есть:
>df
group var1
1 1 1
2 1 1
3 1 1
4 1 1
5 1 2
6 2 1
7 2 2
8 2 2
9 2 2
10 2 3
Хотелось бы, чтобы третий столбец указывал на группу group
) сколько разvar1
происходит, в этом примере это будет: count = (4,4,4,4,1,1,3,3,3,1). Я пытался - без успеха - такие вещи, как:
df %>% group_by(group) %>% rowwise() %>% do(count = nrow(.$var1))
Объяснения очень ценятся!