| matrixStats {propagate} | R Documentation |
These two functions are fast C++ versions for column- and row-wise variance calculation on matrices/data.frames and are meant to substitute the classical apply(mat, 1, var) approach.
colVarsC(x) rowVarsC(x)
x |
a matrix or data.frame |
They are coded in a way that they automatically remove NA values, so they behave like na.rm = TRUE.
A vector with the variance values.
Andrej-Nikolai Spiess
## Speed comparison on large matrix. ## ~ 110x speed increase! ## Not run: MAT <- matrix(rnorm(10 * 500000), ncol = 10) system.time(RES1 <- apply(MAT, 1, var)) system.time(RES2 <- rowVarsC(MAT)) all.equal(RES1, RES2) ## End(Not run)