pinv: Moore-Penrose pseudoinverse

View source: R/pinv.R

pinvR Documentation

Moore-Penrose pseudoinverse

Description

Compute the pseudoinverse of a matrix using the SVD-construction

Usage

pinv(A, eps = 1e-08)

Arguments

A

[numeric] matrix

eps

[numeric] tolerance for determining zero singular values

Details

The Moore-Penrose pseudoinverse (sometimes called the generalized inverse) \boldsymbol{A}^+ of a matrix \boldsymbol{A} has the property that \boldsymbol{A}^+\boldsymbol{AA}^+ = \boldsymbol{A}. It can be constructed as follows.

  • Compute the singular value decomposition \boldsymbol{A} = \boldsymbol{UDV}^T

  • Replace diagonal elements in \boldsymbol{D} of which the absolute values are larger than some limit eps with their reciprocal values

  • Compute \boldsymbol{A}^+ = \boldsymbol{UDV}^T

References

S Lipshutz and M Lipson (2009) Linear Algebra. In: Schuam's outlines. McGraw-Hill

Examples

A <- matrix(c(
 1,  1, -1,  2,
 2,  2, -1,  3,
 -1, -1,  2, -3
),byrow=TRUE,nrow=3)
# multiply by 55 to retrieve whole numbers
pinv(A) * 55


lintools documentation built on Jan. 17, 2023, 1:06 a.m.