怎么在Python中使用numpy线性代数

怎么在Python中使用numpy线性代数

怎么在Python中使用numpy线性代数?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

numpy中线性代数用法

矩阵乘法

>>> import numpy as np
>>> x=np.array([[1,2,3],[4,5,6]])
>>> y=np.array([[7,8],[-1,7],[8,9]])
>>> x
array([[1, 2, 3],
    [4, 5, 6]])
>>> y
array([[ 7, 8],
    [-1, 7],
    [ 8, 9]])
>>> x.dot(y)
array([[ 29, 49],
    [ 71, 121]])
>>> np.dot(x,y)
array([[ 29, 49],
    [ 71, 121]])

计算点积

>>> a=np.array([[1,2],[3,4]])
>>> b=np.array([[11,12],[12,13]])
>>> np.vdot(a,b)
123

计算的公式是

result=1*11+2*12+3*12+4*13

计算内积

>>> np.inner(np.array([1,2,3]),np.array([0,1,0]))
2

计算公式

result=1*0+2*1+3*0

计算行列式

>>> np.inner(np.array([1,2,3]),np.array([0,1,0]))
2
>>> a=np.array([[1,2],[3,4]])
>>> np.linalg.det(a)
-2.0000000000000004

求线性方程的解

x + y + z = 6
2y + 5z = -4
2x + 5y - z = 27

矩阵表示

怎么在Python中使用numpy线性代数

>>> import numpy as np
>>> a = np.array([[1,1,1],[0,2,5],[2,5,-1]])
>>> ainv = np.linalg.inv(a)#求矩阵的逆
>>> b = np.array([[6],[-4],[27]])
>>> x = np.linalg.solve(a,b)#求解需要A-1和B
>>> x
array([[ 5.],
    [ 3.],
    [-2.]])
>>>

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对亿速云的支持。