You can try one of the following approaches to calculating the mean by the group in R.

1. You can use the function **tapply()** to apply the mean.

a<- c('a', 'b', 'c', 'b', 'b', 'a', 'c', 'a', 'a', 'b', 'c')

b<- c(11,12,13,1,34,15,34,54,21,51,87)

v1 <- tapply(b, a, mean)

2. You can use the function **aggregate() **to apply the mean.

a<- c('a', 'b', 'c', 'b', 'b', 'a', 'c', 'a', 'a', 'b', 'c')

b<- c(11,12,13,1,34,15,34,54,21,51,87)

v2 <- aggregate(b, by=list(a), FUN = mean)

The above codes will give the following outputs:

**> v1**

a b c

25.25000 24.50000 44.66667

**> v2**

Group.1 x

1 a 25.25000

2 b 24.50000

3 c 44.66667