If chol2inv(chol(matrix))
is not applicable to my matrix (not a positive-definite square matrix), is there any other alternative methods in R to do matrix inversion (or avoiding the inversion). I am attempting to invert matrices of size 10K by 10K to 15K by 15K in a reasonable amount of time.
Asked
Active
Viewed 1,638 times
0

Ben Bolker
- 211,554
- 25
- 370
- 453

SOUser
- 610
- 1
- 11
- 25
-
1What are you inverting them for? What's next after inversion? Is there any special structure to the problem (e.g. low rank, sparseness, ... )? – Glen_b Nov 26 '14 at 02:17
-
the inversion is part of the end result so they have to be inverted; they aren't sparse, all elements are populated in fact (e.g. gene expression matrix). – SOUser Nov 26 '14 at 14:23
-
What is a "reasonable amount of time"? In your question you mention avoiding inversion (which is a good idea), but in a comment you say that you actually need the inverted matrix as a result? – Roland Nov 26 '14 at 15:55
-
hi thanks for the response! by avoid inverse i meant avoid using solve(), sorry. the chol2inv approach is much faster when applicable but I need an approach that is applicable when the matrix is not positive-definite square matrix. Also there is the memory consideration in R. So if you know of memory and matrix packages / functions that enable the inversion(by whatever method) of a 10K by 10K matrix in R that would be awesome – SOUser Nov 26 '14 at 16:35
-
2Until you give some specific properties of your matrix, this is very broad and somewhat off-topic. Also, I can't imagine what you need the inverse for. – Roland Nov 26 '14 at 17:02