使用 plyr 时,我经常想要 1) 仅对变量的子集执行操作,以及 2) 命名操作的输出。例如:
d = data.frame(sex=c("m","f","m","m","f","f"), age=c(30,20,15,50,10,40), weight=c(130,120,115,150,90,180))
ddply(d, .(sex), function(df) data.frame(age_mu = mean(df$age)))
但这似乎有点笨拙,似乎我应该能够写出类似的东西:
ddply(d, .(sex), age_mu = mean(age))
从我读过的内容来看,plyr 中似乎有(或曾经有过?)一个汇总函数,这将允许我编写:
ddply(d, .(sex), transform, age_mu = mean(age))
但是,当我尝试使用 summarise 函数时,R 告诉我它不存在。它是否已被重命名或移动到另一个包中?我在 Mac 上使用 plyr 版本 0.1.5(我相信它是最新的——我尝试过更新)。