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

  • Section 1:行列式的计算

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

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

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

ex1:

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

 import numpy as np
import numpy.linalg as lg A = np.array([[3, 2, -4], [4, 1, -2],
[5, 2, -3]])
print A det_A = lg.det(A)
print "The value of det A is :"
print det_A

得到的输出结果为:

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

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

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

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

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

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

python之numpy矩阵库的使用(续)的更多相关文章

  1. NumPy矩阵库

    NumPy - 矩阵库 NumPy 包包含一个 Matrix库numpy.matlib.此模块的函数返回矩阵而不是返回ndarray对象. matlib.empty() matlib.empty()函 ...

  2. NumPy 矩阵库(Matrix)

    NumPy 矩阵库(Matrix) NumPy 中包含了一个矩阵库 numpy.matlib,该模块中的函数返回的是一个矩阵,而不是 ndarray 对象. 一个 的矩阵是一个由行(row)列(col ...

  3. 18、NumPy——矩阵库(Matrix)

    NumPy 矩阵库(Matrix) NumPy 中包含了一个矩阵库 numpy.matlib,该模块中的函数返回的是一个矩阵,而不是 ndarray 对象. 一个 的矩阵是一个由行(row)列(col ...

  4. Numpy 矩阵库(Matrix)

    Numpy 中包含了一个矩阵库 numpy.matlib, 该模块中的函数返回的是一个矩阵, 而不是 ndarray 对象. 一个 m * n de 矩阵是一个 有 m 行(row) n 列(colu ...

  5. 吴裕雄--天生自然Numpy库学习笔记:NumPy 矩阵库(Matrix)

    import numpy.matlib import numpy as np print (np.matlib.empty((2,2))) # 填充为随机数据 numpy.matlib.zeros() ...

  6. python常用序列list、tuples及矩阵库numpy的使用

    近期开始学习python机器学习的相关知识,为了使后续学习中避免编程遇到的基础问题,对python数组以及矩阵库numpy的使用进行总结,以此来加深和巩固自己以前所学的知识. Section One: ...

  7. Python之Numpy详细教程

    NumPy - 简介 NumPy 是一个 Python 包. 它代表 “Numeric Python”. 它是一个由多维数组对象和用于处理数组的例程集合组成的库. Numeric,即 NumPy 的前 ...

  8. Python的Numpy库简述

    numpy 是 python 的科学计算库import numpy as np 1.使用numpy读取txt文件 # dtype = "str":指定数据格式 # delimite ...

  9. 矩阵库Numpy基本操作

    NumPy是一个关于矩阵运算的库,熟悉Matlab的都应该清楚,这个库就是让python能够进行矩阵话的操作,而不用去写循环操作. 下面对numpy中的操作进行总结. numpy包含两种基本的数据类型 ...

随机推荐

  1. SQL语句--连接查询

    一.连接查询有以下几种 1.内连接查询 select * from t1 inner join t2 on t1.x = t2.x;  返回有关联的行 2.外链接查询 以下写法都省略了 中间的 out ...

  2. 基于腾讯云CLB实现K8S v1.10.1集群高可用+负载均衡

    概述: 最近对K8S非常感兴趣,同时对容器的管理等方面非常出色,是一款非常开源,强大的容器管理方案,最后经过1个月的本地实验,最终决定在腾讯云平台搭建属于我们的K8S集群管理平台~ 采购之后已经在本地 ...

  3. Centos6升级至openssh-7.5p1

    最近公司有几台服务器需要搬至甲方(政府单位),所以在安装服务时用的是16年的openssh7.3pl, 今天通知我们有漏洞,需要再一次升级,看到官方文档上版本已升级至7.5,所以干脆直接搞7.5 具体 ...

  4. Python基础灬异常

    异常&异常处理 异常!=错误 在程序运行过程中,总会遇到各种各样的错误. 有的错误是程序编写有问题造成的,比如本来应该输出整数结果输出了字符串,这种错误我们通常称之为bug,bug是必须修复的 ...

  5. [咸恩静][Coffee House]

    歌词来源:http://music.163.com/#/song?id=5400159 하루의 시작은 향긋한 커피 [ha-lu-e xi-ja-geun hyang-geu-Tan Keo-Pi] ...

  6. 对首师大研究生院的UI分析

    我们分析的是首都师范大学研究生院的UI界面 网站链接http://grad.cnu.edu.cn/index.htm 学校设计和石家庄铁道大学的界面类似,都是有一个大的置顶的名字,将学校或者学院的名字 ...

  7. Java包名命名规则(转载)

    转载自:http://lilinhai548.blog.163.com/blog/static/5847332920155132151359/ 鸣谢原作者  学习Java的童鞋们都知道,Java的包. ...

  8. 操作系统cmd

    实验一  命令解释程序的编写(两周内) 一.目的和要求 1. 实验目的 (1)掌握命令解释程序的原理: (2)*掌握简单的DOS调用方法: (3)掌握C语言编程初步. 2.实验要求 编写类似于DOS, ...

  9. psp 第二周

    11号                                                                              12号 类别c 内容c 开始时间s 结 ...

  10. JSON和Django内置序列化

    JSON 什么是JSON JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻量级的文本数据交换格式 JSON 独立于语言 * J ...