3.10矩阵与线性代数运算

问题:

​ 你需要执行矩阵和线性代数运算,比如矩阵乘法、寻找行列式、求解线性方程组等等。

解决方案:

​ Numpy库有一个矩阵对象可以用来解决这个问题。

​ 矩阵类似于3.9小节中数组对象,但是遵循线性代数的计算规则。下面的一个例子展示了矩阵的一些基本特性:

import numpy as  np

m = np.matrix([[1, -2, 3], [0, 4, 5], [7, 8, -9]])

print(m)
'''
[[ 1 -2  3]
 [ 0  4  5]
 [ 7  8 -9]]
'''
print(m.T)
'''
[[ 1  0  7]
 [-2  4  8]
 [ 3  5 -9]]

'''
print(m.I)
'''
[[ 0.33043478 -0.02608696  0.09565217]
 [-0.15217391  0.13043478  0.02173913]
 [ 0.12173913  0.09565217 -0.0173913 ]]


'''

v = np.matrix([[2], [3], [4]])

print(v)
'''
[[2]
 [3]
 [4]]

'''
print(m*v)
'''
[[ 8]
 [32]
 [ 2]]
'''

可以在numpy.linalg子句中找到更多的操作函数,比如:

import numpy.linalg
print(numpy.linalg.det(m))# ->-229.99999999999983
print(numpy.linalg.eigvals(m))
'''
[-13.11474312   2.75956154   6.35518158]

'''
x = numpy.linalg.solve(m, v)
print(m*x)
'''
[[2.]
 [3.]
 [4.]]
'''
print(v)
'''
[[2]
 [3]
 [4]]
'''
posted @   qiupeng  阅读(62)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示