Calculates the median for each row in a matrix
Calculates the median for each row in a matrix.
rowMedians(x, na.rm=FALSE, ...)
The implementation of rowMedians()
is optimized for both speed and memory.
To avoid coercing to double
s (and hence memory
allocation), there is a special implementation for
integer
matrices. That is, if x
is an
integer
matrix
, then
rowMedians(as.double(x))
would require three times the memory
of rowMedians(x)
, but all this is avoided.
Missing values are excluded before calculating the medians.
Henrik Bengtsson
See rowMeans()
in colSums
().
set.seed(1) x <- rnorm(n=234*543) x[sample(1:length(x), size=0.1*length(x))] <- NA dim(x) <- c(234,543) y1 <- rowMedians(x, na.rm=TRUE) y2 <- apply(x, MARGIN=1, FUN=median, na.rm=TRUE) stopifnot(all.equal(y1, y2)) x <- cbind(x1=3, x2=c(4:1, 2:5)) stopifnot(all.equal(rowMeans(x), rowMedians(x)))
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.