[R] How to get the pseudo left inverse of a singular squarem atrix?

Spencer Graves spencer.graves at pdf.com
Fri Feb 6 17:17:26 CET 2004


      The documentation for "ginv" in MASS says it "Calculates the 
Moore-Penrose generalized inverse of a matrix 'X'."  The theory says 
that for each m x n matrix A, there is a unique n x m matrix G 
satisfying AGA = A and GAG = G.  
(http://mathworld.wolfram.com/Moore-PenroseMatrixInverse.html). 

      Consider the following simple example: 

>  A <- array(c(1,1,0,0), dim=c(2,2))
[2,]  0.0  0.0
>  A
     [,1] [,2]
[1,]    1    0
[2,]    1    0
>  ginv(A)
     [,1] [,2]
[1,]  0.5  0.5
[2,]  0.0  0.0
>  ginv(A)%*%A
     [,1] [,2]
[1,]    1    0
[2,]    0    0
>  A%*%ginv(A)
     [,1] [,2]
[1,]  0.5  0.5
[2,]  0.5  0.5
>  A%*%ginv(A)%*%A
     [,1] [,2]
[1,]    1    0
[2,]    1    0
>  ginv(A)%*%A%*%ginv(A)
     [,1] [,2]
[1,]  0.5  0.5
[2,]  0.0  0.0

      hope this helps.  spencer graves

alka seltzer wrote:

>>I'm rusty, but not *that* rusty here, I hope.
>>
>>If W (=Z*Z' in your case) is singular, it can not
>>    
>>
>have >inverse, which by
>  
>
>>definition also mean that nothing multiply by it will
>>produce the identity
>>matrix (for otherwise it would have an inverse and
>>thus nonsingular).
>>
>>The definition of a generalized inverse is something
>>like:  If A is a
>>non-null matrix, and G satisfy AGA = A, then G is
>>called a generalized
>>inverse of A.  This is not unique, but a unique one
>>that satisfy some
>>additional properties is the Moore-Penrose inverse. 
>>    
>>
>I >don't know if this is
>  
>
>>what ginv() in MASS returns, as I have not used it
>>before.
>>    
>>
>
>Andy
>
>
>The inverse of a Matrix A is defined as a Matrix B
>such that B*A=A*B=I and not just B*A=I. But there are
>matrices B for singular matrices A such that B*A=I but
>A*B != I, therefore there exist "left-inverses" (or
>"right-inverses") for non-invertable matrices.
>
>Best Regards
>
>__________________________________
>

>______________________________________________
>R-help at stat.math.ethz.ch mailing list
>https://www.stat.math.ethz.ch/mailman/listinfo/r-help
>PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>  
>




More information about the R-help mailing list