29

I want to test the rank of a matrix, is there someone who can recommend a package/function in R for this?

Thomas
  • 43,637
  • 12
  • 109
  • 140
user1274212
  • 339
  • 1
  • 3
  • 5

3 Answers3

42

You can try the function qr ("qr", because it performs a QR decomposition):

#define a matrix for this example
M <- matrix(data = rnorm(12), ncol = 3)

#run the function qr() 
qr(M)$rank

#Alternative: load the Matrix package...
require(Matrix)

#...and run the function rankMatrix()
rankMatrix(M)[1]
Qaswed
  • 3,649
  • 7
  • 27
  • 47
0

You can use the Library pracma: Practical Numerical Math (Provides a large number of functions from numerical analysis and linear algebra, numerical optimization, differential equations, time series, plus some well-known special mathematical functions.).

Install it using the below command in the R console: install.packages("pracma", repos="http://R-Forge.R-project.org") You can use the library then : library(pracma) Rank(Your Matrix object)