pinverse

语法

pinverse(X)

别名:pinv

详情

计算矩阵 X 的伪逆矩阵。

返回值:双精度浮点矩阵(FAST DOUBLE MATRIX)

参数

X 是一个矩阵。

例子

x=1..42:2;
x.pinverse()

col1

col2

-2 1.5
1 -0.5
y=1..82:4
y.pinverse(); 

col1

col2

-1 0.85
-0.5 0.45
0 0.05
0.5 -0.35
s1 = indexedSeries(2012.01.01..2012.01.04, [10, 20, 30, 40])
pinv(s1)

col1

col2

col3

col4

0.0033 0.0067 0.01 0.0133
m=matrix(1..10, 11..20)
m.rename!(2020.01.01..2020.01.10, `A`B);
m.setIndexedMatrix!()
pinv(m)

col1

col2

col3

col4

col5

col6

col7

col8

col9

col10

-0.0945 -0.0758 -0.057 -0.0382 -0.0194 -0.0006 0.0182 0.037 0.0558 0.0745
0.04 0.0333 0.0267 0.02 0.0133 0.0067 0 -0.0067 -0.0133 -0.02
当矩阵非满秩时,使用计算逆矩阵(inverse)会报错,此时可以计算伪逆矩阵(pinverse )。
x=1 2 3 1 2 3$2:3
inverse(x) //报错 The argument of 'inverse' must be a square matrix.
pinverse(x)
col1 col2
-0.1067 0.2267
0.4133 -0.2533
-0.0667 0.2667

相关函数:inverse