这个系列是Gilbert Strang的麻省理工公开课:线性代数 的python实现
课程地址:http://open.163.com/special/opencourse/daishu.html
课二:矩阵消元
如何解线性方程组Ax=b:
用numpy库的linalg.solve方法,也可以用scipy.linalg.solve
import numpy as np
A= np.array([[1,2,1],[3,8,1],[0,4,1]])
b = np.array([2,12,2])
x = np.linalg.solve(a,b)
print(c)
A是矩阵A,b是右侧矩阵,x是向量
课三:矩阵乘法与逆矩阵
numpy当中有两种矩阵,array与matrix,一般情况都用array
当对array进行乘法运算时,直接a*b得到的是数量积,即矩阵各个位置的元素分别相乘。
而MIT公开课里讲的矩阵乘法需要用到numpy.dot()
注意矩阵乘法中两个矩阵的左右位置不同运算结果也不同
当用matrix进行矩阵乘法运算时则不同,a*b和numpy.dot()都是遵循矩阵乘法运算规则。