Подмножество списка - это путь plyr?

У меня часто есть данные, которые сгруппированы по одной или нескольким переменным, с несколькими регистрациями в каждой группе. Из фрейма данных я хочу выбрать группы в соответствии с различными критериями.

Я обычно использую подход split-sapply-rbind, где я извлекаю элементы из списка, используя логический вектор.

Вот небольшой пример. Я начинаю с фрейма данных с одной переменной группировки ('group') и хочу выбрать группы с максимальной массой менее 45:

dd <- data.frame(group = rep(letters[1:3], each = 5), 
                 mass = c(rnorm(5, 30), rnorm(5, 50), 
                          rnorm(5, 40)))
    dd2 <- split(x = dd, f = dd$group)
    dd3 <- dd2[sapply(dd2, function(x) max(x$mass) < 45)]
    dd4 <- do.call(rbind, dd3)

Я только начал использовать plyr, и теперь мне интересно:
есть ли альтернатива plyr для достижения этой цели?

Ответы на вопрос(3)

Ваш ответ на вопрос