Как можно быстро агрегировать и обобщать данные?

У меня есть набор данных, заголовки которого выглядят так:

PID Time Site Rep Count

Я хочу просуммировать Count на Rep для каждый PID x Time x Site combo

в результирующем data.frame, я хочу получить среднее значение Count для комбинации PID x Time x Site .

Текущая функция выглядит следующим образом:

dummy <- function (data)
{
A<-aggregate(Count~PID+Time+Site+Rep,data=data,function(x){sum(na.omit(x))})
B<-aggregate(Count~PID+Time+Site,data=A,mean)
return (B)
}

Это очень медленно (исходный data.frame - 510000 20) . Есть ли способ ускорить это с помощью plyr?

12
задан Matt Dowle 26 October 2011 в 14:24
поделиться