线性代数
diag 以一维数组的形式返回方阵的对角线(或非对角线)元素,或将一维数组转换为方阵(非对角线元素为0)
dot 矩阵乘法
trace 迹
det 行列式
eig 特征值和特征向量
inv 逆
pinv M-P伪逆
qr QR分解
svd 奇异值分解(SVD)
solve 解线性方程组Ax=b,其中A为一个方阵
from numpy.linalg import inv,qr,eig,det
X=np.random.randn(5)
In [15]: np.diag(X,0)
Out[15]:
array([[-0.04919752, 0. , 0. , 0. , 0. ],
[ 0. , -2.41638482, 0. , 0. , 0. ],
[ 0. , 0. , -0.74095248, 0. , 0. ],
[ 0. , 0. , 0. , 1.22281782, 0. ],
[ 0. , 0. , 0. , 0. , 0.32168267]])
In [17]: X=randn(5,5)
In [18]: np.diag(X)
Out[18]: array([-0.88838756, 1.26365698, -1.12656889, 0.16951645, -1.66611019])
In [19]: np.trace(X)
Out[19]: -2.2478932087162335
In [23]: eig(X)
Out[23]:
(array([ 2.72915784+0.j , -3.17432220+0.j ,
-0.53174377+1.33933414j, -0.53174377-1.33933414j, -0.73924131+0.j ]),
array([[ 0.33773200+0.j , -0.47158061+0.j ,
-0.15087259-0.43977843j, -0.15087259+0.43977843j, -0.19931449+0.j ],
[-0.61611163+0.j , 0.14440978+0.j ,
-0.34954343-0.17727477j, -0.34954343+0.17727477j, -0.47632919+0.j ],
[ 0.22996607+0.j , 0.26472170+0.j ,
0.55411821+0.j , 0.55411821-0.j , 0.33842959+0.j ],
[ 0.49452699+0.j , -0.32855279+0.j ,
-0.39200833+0.11416825j, -0.39200833-0.11416825j, -0.75503564+0.j ],
[ 0.45705823+0.j , 0.76074505+0.j ,
-0.08744326-0.3857813j , -0.08744326+0.3857813j , 0.22084120+0.j ]]))
In [26]: det(X)
Out[26]: 13.298783344691671