python矩阵库_python之numpy矩阵库的使用(续)

本文是对我原先写的python常用序列list、tuples及矩阵库numpy的使用中的numpy矩阵库的使用的补充。结合我个人现在对线性代数的复习进度来不断更博。

Section 1:行列式的计算

我们知道,线代中,行列式是相当重要的一部分,因为行列式通常决定了一个矩阵的逆是否存在以及方程是否有解等,因此,掌握行列式的计算相当重要,结合numpy矩阵库,对我们所学进行拓展,并且在学习的过程中还能掌握numpy的使用,可谓一举两得。

在原先的博客中,已经提及了numpy中如何创建矩阵、如何求解矩阵的逆以及numpy中一些矩阵的操作运算等。在这一节主要讲解行列式的计算函数det。

在numpy中,带有一个计算行列式值的计算函数,det。它存在于linalg类下,可以通过点操作符来调用。以下面这道行列式值的求解为例:

ex1:

可以看到,我通过手算的值为-5,下面使用numpy库来计算,代码如下:

1 importnumpy as np2 importnumpy.linalg as lg3

4 A = np.array([[3, 2, -4], [4, 1, -2],5 [5, 2, -3]])6 printA7

8 det_A =lg.det(A)9 print "The value of det A is :"

10 print det_A

View Code

得到的输出结果为:

可以看到与我所算的结果一样。

需要注意的是,numpy矩阵库所带的det函数无法计算元素为字符的矩阵,如下列行列式的值就无法计算:

在求解线性方程中,矩阵秩的求解非常重要,它是方程组是否有解的充分必要条件。在numpy中使用线性代数包中的matrix_rank进行求解矩阵的秩,其使用方法如下所示:

1 importnumpy as np2 importnumpy.linalg as lg3 A = np.array([[1, 0, 0, 0], [-2, 3, 0, 0],4 [0, -4, 5, 0], [0, 0, -6, 7]])5 print "The matrix_rank of A:"

6 print lg.matrix_rank(A)

View Code

以下面这道题为例,手算的结果为3:

使用上述代码,求得的结果为:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值