R言語:同じ種類の行を平均してまとめる

昔は骨折り仕事だったが、Rではaggregateという便利な関数がある。

install.packages("plyr")
library(plyr)
tmpmat1 <- matrix(c(1,2,3,1,4,5,2,4,6,2,5,5,3,8,8,1,2,2), ncol = 3, byrow = T)
rownames(tmpmat1) <- c("Row #1","Row #2","Row #3","Row #4","Row #5","Row #6")
colnames(tmpmat1) <- c("Col #1","Col #2","Col#3")
aggregate(tmpmat1, by=list(c("A","A","A","B","B","A"), c(10,10,10,20,20,20)), FUN=mean)