python中的矩阵运算


numpy/scipy/sympy:
搬运: python矩阵的运算大全:

python矩阵运算可以用numpy模块,也可以用scipy模块,主要运算包括以下几种:

1-1 python矩阵运算所需模块

import numpy as np
import matplotlib.pyplot as plt
import scipy.linalg as lg #scipy矩阵运算模块

1-2定义矩阵和进行相关的矩阵运算

a=np.array([[1,2],[3,4]]) #定义原始矩阵
print(a)
print(lg.inv(a)) #求取矩阵的逆矩阵
print(lg.det(a)) #求取矩阵的行列式
b=np.array([6,14]) #定义线性方程组的结果向量
print(lg.solve(a,b)) #求解线性方程组的解
print(lg.eig(a)) #求取矩阵的特征值与特征向量
print("LU:",lg.lu(a)) #矩阵的LU分解
print("QR:",lg.qr(a)) #矩阵的QR分解
print("SVD:",lg.svd(a)) #矩阵的奇异值分解(SVD分解)
print("Schur:",lg.schur(a)) #矩阵的Schur分解

RREF

搬运:Python3 矩阵求最简行阶梯矩阵

import numpy as np
from sympy import Matrix
from sympy.matrices import dense

# Matrix convert to array
A_mat = Matrix([[1, 2, 1, 1], [2, 1, -2, -2], [1, -1, -4, 3]])
A_arr1 = np.array(A_mat.tolist()).astype(np.int32)
A_arr2 = dense.matrix2numpy(A_mat, dtype=np.int32) 
 
# array convert to Matrix
B_arr = np.array([[1, 2, 1, 1], [2, 1, -2, -2], [1, -1, -4, 3]])
B_mat = Matrix(B_arr)
 
# RREF
A_rref = np.array(A.rref()[0].tolist()).astype(np.int32)
B_rref = (Matrix(B_arr).rref()[0].tolist()).astype(np.int32)
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值