Используйте ave
или aggregate
, в зависимости от того, как вы хотите выводить.
A matrix
будет быстрее, чем data.frame
, но вы можете использовать matrix
, только если x
и y
относятся к одному типу.
set.seed(21)
x <- cbind(rnorm(20), sample(1:2,20,TRUE))
ave(x[,1], x[,2])
aggregate(x[,1], by=list(x[,2]), FUN=mean)