[R] Rank of matrix

Martin Maechler maechler at stat.math.ethz.ch
Tue Aug 4 10:47:35 CEST 2009

>>>>> "AR" == Alex Roy <alexroy2008 at gmail.com>
>>>>>     on Tue, 4 Aug 2009 09:56:42 +0200 writes:

    AR> Dear all, Rank of a matrix depends on which factors?
    AR> Only on rows or coumns?  or both ? If there is a
    AR> collinearlity in the variables ( columns ) does it
    AR> effects the rank?

This has nothing to do with R,
even though you provide R code here:.

Please learn about this, maybe from Wikipedia:


    >> X<-matrix((rnorm(10000)),50) dim(X)
    AR> [1] 50 200
    >> qr(X)$rank
    AR> [1] 50
    >> X[,2]<-X[,30] qr(X)$rank
    AR> [1] 50
    >> X[10,]<-X[7,] qr(X)$rank
    AR> [1] 49

Note that the rank of a matrix is well defined in theoretical
linear algebra, but in practice is quite a bit more complicated.

For this reason, and to bring this back to a topic more fit to R-help :

The package 'Matrix' (typically part of R, since R 2.9.0),
has a function 

whose options {and implementation; just type 'rankMatrix' !}
show you a bit about the problematics.

Martin Maechler, ETH Zurich

More information about the R-help mailing list