对于每个级别的因素,我需要提取除当前数据之外的所有 data.frame 子集的聚合值。例如,有几个受试者在几天内执行反应时间任务,我需要计算所有受试者和所有天的平均反应时间,但不包括计算平均值的受试者。目前,我这样做:
library(lme4)
ddply(sleepstudy, .(Subject, Days), summarise,
avg_rt = mean(sleepstudy[sleepstudy$Subject != Subject &
sleepstudy$Days == Days,"Reaction"]), .progress="text")
它适用于小型数据集,但对于大型数据集可能会非常慢。有没有办法更快地做到这一点?