mean(x, trim = 0, na.rm = FALSE, ...)
x
: numeric vector
trim
: trim off a fraction at each end of the vector, default is 5%
na.rm
: whether NA should be removed, if not, NA will be returned
...
>x <- c(1,2.3,2,3,4,8,12,43,-4,-1) >mean(x)
[1] 7.03
Missing value affect the results:
>y<- c(x,NA) >y
[1] 1.0 2.3 2.0 3.0 4.0 8.0 12.0 43.0 -4.0 -1.0 NA
>mean(y)
[1] NA
After define na.rm=TRUE, result is meaningful:
>mean(y,na.rm=TRUE)
[1] 43
Trim at each end:
>z <- c(rep(1:20),-200,400) >mean(z)
[1] 18.63636
>mean(z,trim=0.5)
[1] 10.5
colMeans() and rowMeans() functions calculate the column and row means of a matrix.
> x <- matrix(rep(1:9),3,3) > x
[,1] [,2] [,3] [1,] 1 4 7 [2,] 2 5 8 [3,] 3 6 9
> colMeans(x)[1] 2 5 8 > rowMeans(x)[1] 4 5 6
You may check aggregate() function for calculating the mean of each group of a data frame.