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 doubles (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.