Numpy基础教程 — 线性代数

 

Numpy基础教程 — 线性代数

 

本教程适合于numpy基础入门,更多详尽内容请阅读官网http://www.numpy.org/,此篇为numpy基础学习教程系列之线性代数篇,倾向于实践用法,后续还会推出一系列numpy其它方面的教程,欢迎广大圈友一起交流学习,并指出其中的错误。

 

注意:以下np为import numpy as np中的np标识符

 

np.linalg.inv(A):计算矩阵A的逆矩阵

注意:如果矩阵A是奇异矩阵或非方阵,则会抛出异常

 

np.linalg.pinv(A):计算矩阵A的广义逆矩阵。

 

(a, residuals, rank, s) = np.linalg.lstsq(x, b):用最小二乘法求解线性方程组a*x=b,其中a为求解后的系数

 

np.linalg.solve(A, b):求解线性方程组A*x=b的解。

注意:A为系数矩阵,b为常数向量

 

np.linalg.eigvals(A):求解矩阵A的特征值

 

np.linalg.eig(A):求解矩阵A的特征值和特征向量,该函数返回一个元组,按列排放的特征值和对应的特征向量,其中第一个元素为特征值,第二个元素为特征向量(列向量)

 

U, Sigma, V = np.linalg.svd(A, full_matrices=False):对矩阵A进行奇异值分解

Numpy基础教程 — 线性代数

 

注意:Sigma是对角线上的元素组成的数组,非对角线上的元素为0

 

np.linalg.det(A):矩阵求行列式(标量)

 

np.linalg.norm(x,ord=None, axis=None,keepdims=False):表示范数,范数是对向量(或者矩阵)的度量,是一个标量

Numpy基础教程 — 线性代数