Я хочу знать для каждой страны максимальную сумму продолжительности начальной, средней и старшей школы (потому что для каждого года продолжительность может не совпадать). Во-первых, я group_by country и использую colSum, но полученное мной значение было максимальным (colSum) для всех, что означает, что group_bu здесь вообще не работает.
Я провел некоторое исследование и отделил «plyr». На самом деле, если я попытаюсь
df1 <- mtcars %>%
group_by(cyl, gear) %>%
summarise(
newvar = sum(wt)
)
это хорошо работает. Но здесь я не изменяюсь не по одному столбцу, а по многим столбцам. Вы знаете, что мне делать, чтобы это исправить?
Большое спасибо.
data1 = data.frame(country = c("A",'A',"A",'A',"B","B","B","B"),
item = c("Age for primary school","Duration for primary school", "Duration for middle school", "duration for high school",
"Age for primary school","Duration for primary school", "Duration for middle school", "duration for high school"),
'2008' = c(6, 6, 4, 3,7,5,4,3),
'2009' = c(6, 6, 4, 3,6,6,4,3),
'2010' = c(7, 5, 4, 3,6,6,4,3),
'2011' = c(7, 5, 4, 3,7,5,4,3))
temp1 <- dplyr::filter(data1, item != 'Age for primary school') %>%
dplyr::group_by(country) %>%
dplyr::mutate(n_grade = max(colSums(.[,-c(1:2)], na.rm = TRUE)))