摘要: NumPy IO 操作是以文件的形式从磁盘中加载 ndarray 对象。在这个过程中,NumPy 可以两种文件类型处理 ndarray 对象,一类是二进制文件(以.npy结尾),另一类是普通文本文件。上述两种文件格式,分别对应着不同的 IO 方法,如下所示: NumPy IO操作方法 文件类型 处理 阅读全文
posted @ 2022-08-02 17:24 随遇而安== 阅读(33) 评论(0) 推荐(0) 编辑
摘要: Matplotlib 是 Python 的绘图库,它经常与 NumPy 一起使用,从而提供一种能够代替 Matlab 的方案。不仅如此 Matplotlib 还可以与 PyQt 和 wxPython 等图形工具包一起使用。Matplotlib 最初由 John D. Hunter 编写,目前,它的最 阅读全文
posted @ 2022-08-02 17:23 随遇而安== 阅读(39) 评论(0) 推荐(0) 编辑
摘要: NumPy 提供了 numpy.linalg 模块,该模块中包含了一些常用的线性代数计算方法,下面对常用函数做简单介绍: NumPy线性代数函数 函数名称 描述说明 dot 两个数组的点积。 vdot 两个向量的点积。 inner 两个数组的内积。 matmul 两个数组的矩阵积。 det 计算输入 阅读全文
posted @ 2022-08-02 17:22 随遇而安== 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 矩阵乘法是将两个矩阵作为输入值,并将 A 矩阵的行与 B 矩阵的列对应位置相乘再相加,从而生成一个新矩阵,如下图所示: 注意:必须确保第一个矩阵中的行数等于第二个矩阵中的列数,否则不能进行矩阵乘法运算。 图1:矩阵乘法 矩阵乘法运算被称为向量化操作,向量化的主要目的是减少使用的 for 循环次数或者 阅读全文
posted @ 2022-08-02 17:22 随遇而安== 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 数据以字节的形式存储在计算机内存中,而存储规则可分为两类,即小端字节序与大端字节序。小端字节序(little-endian),表示低位字节排放在内存的低地址端,高位字节排放在高地址段,它与大端字节序(big-endian)恰好相反。对于二进制数 0x12345678,假设从地址 0x4000 开始存 阅读全文
posted @ 2022-08-02 17:21 随遇而安== 阅读(38) 评论(0) 推荐(0) 编辑
摘要: NumPy 提供了一个 矩阵库模块numpy.matlib,该模块中的函数返回的是一个 matrix 对象,而非 ndarray 对象。矩阵由 m 行 n 列(m*n)元素排列而成,矩阵中的元素可以是数字、符号或数学公式等。 matlib.empty() matlib.empty() 返回一个空矩阵 阅读全文
posted @ 2022-08-02 17:21 随遇而安== 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 对 NumPy 数组执行些函数操作时,其中一部分函数会返回数组的副本,而另一部分函数则返回数组的视图。本节对数组的副本和视图做重点讲解。其实从内存角度来说,副本就是对原数组进行深拷贝,新产生的副本与原数组具有不同的存储位置。而视图可理解为对数组的引用,它和原数组有着相同的内存位置。 赋值操作 赋值操 阅读全文
posted @ 2022-08-02 17:20 随遇而安== 阅读(18) 评论(0) 推荐(0) 编辑
摘要: NumPy 提供了许多统计功能的函数,比如查找数组元素的最值、百分位数、方差以及标准差等。 numpy.amin() 和 numpy.amax() 这两个函数用于计算数组沿指定轴的最小值与最大值: amin() 沿指定的轴,查找数组中元素的最小值,并以数组形式返回; amax() 沿指定的轴,查找数 阅读全文
posted @ 2022-08-02 17:19 随遇而安== 阅读(70) 评论(0) 推荐(0) 编辑
摘要: NumPy 提供了多种排序函数, 这些排序函数可以实现不同的排序算法。排序算法特征主要体现在以下四个方面:执行速度,最坏情况下的复杂度,所需的工作空间以及算法的稳定性。下表列举了三种排序算法: NumPy排序算法 种类 速度 最坏复杂度 工作空间 稳定性 quicksort(快速排序) 1 O(n^ 阅读全文
posted @ 2022-08-02 17:19 随遇而安== 阅读(45) 评论(0) 推荐(0) 编辑
摘要: NumPy 数组的“加减乘除”算术运算,分别对应 add()、subtract()、multiple() 以及 divide() 函数。 注意:做算术运算时,输入数组必须具有相同的形状,或者符合数组的广播规则,才可以执行运算。 下面看一组示例: import numpy as np a = np.a 阅读全文
posted @ 2022-08-02 17:18 随遇而安== 阅读(84) 评论(0) 推荐(0) 编辑
摘要: NumPy 中包含了大量的数学函数,它们用于执行各种数学运算,其中包括三角函数、舍入函数等等。下面对它们做详细讲解。 三角函数 NumPy 中提供了用于弧度计算的的 sin()(正弦)、cos()(余弦)和 tan()(正切)三角函数。示例如下: import numpy as np arr = n 阅读全文
posted @ 2022-08-02 17:17 随遇而安== 阅读(83) 评论(0) 推荐(0) 编辑
摘要: NumPy 提供了许多字符串处理函数,它们被定义在用于处理字符串数组的 numpy.char 这个类中,这些函数的操作对象是 string_ 或者 unicode_ 字符串数组。如下表所示: NumPy处理字符串数组函数 函数名称 描述 add() 对两个数组相应位置的字符串做连接操作。 multi 阅读全文
posted @ 2022-08-02 17:17 随遇而安== 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 本节重点介绍 NumPy 数组元素的增删改查操作,主要有以下方法: 数组元素操作方法 函数名称 描述说明 resize 返回指定形状的新数组。 append 将元素值添加到数组的末尾。 insert 沿规定的轴将元素值插入到指定的元素前。 delete 删掉某个轴上的子数组,并返回删除后的新数组。 阅读全文
posted @ 2022-08-02 17:16 随遇而安== 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 本节重点讲解 NumPy 的位运算,NumPy 中提供了以下按位运算函数: numpy按位运算函数 序号 函数 位运算符 描述说明 1 bitwise_and & 计算数组元素之间的按位与运算。 2 bitwise_or | 计算数组元素之间的按位或运算。 3 invert ~ 计算数组元素之间的按 阅读全文
posted @ 2022-08-02 17:16 随遇而安== 阅读(39) 评论(0) 推荐(0) 编辑
摘要: NumPy 中包含了一些处理数组的常用方法,大致可分为以下几类: 数组变维操作 数组转置操作 修改数组维度操作 连接与分割数组操作 下面分别对它们进行介绍。 数组变维操作 数组变维操作 函数名称 函数介绍 reshape 在不改变数组元素的条件下,修改数组的形状。 flat 返回是一个迭代器,可以用 阅读全文
posted @ 2022-08-02 17:15 随遇而安== 阅读(19) 评论(0) 推荐(0) 编辑
摘要: NumPy 提供了一个 nditer 迭代器对象,它可以配合 for 循环完成对数组元素的遍历。下面看一组示例,使用 arange() 函数创建一个 3*4 数组,并使用 nditer 生成迭代器对象。示例1: import numpy as np a = np.arange(0,60,5) a = 阅读全文
posted @ 2022-08-02 17:14 随遇而安== 阅读(57) 评论(0) 推荐(0) 编辑
摘要: NumPy 与 Python 的内置序列相比,它提供了更多的索引方式。除了在《Numpy切片和索引》一节用到索引方式外,在 NumPy 中还可以使用高级索引方式,比如整数数组索引、布尔索引以及花式索引,本节主要对上述三种索引方式做详细介绍。高级索引返回的是数组的副本(深拷贝),而切片操作返回的是数组 阅读全文
posted @ 2022-08-02 17:13 随遇而安== 阅读(106) 评论(0) 推荐(0) 编辑
摘要: NumPy 中的广播机制(Broadcast)旨在解决不同形状数组之间的算术运算问题。我们知道,如果进行运算的两个数组形状完全相同,它们直接可以做相应的运算。示例如下: import numpy as np a = np.array([0.1,0.2,0.3,0.4]) b = np.array([ 阅读全文
posted @ 2022-08-02 17:13 随遇而安== 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 在 NumPy 中,如果想要访问,或修改数组中的元素,您可以采用索引或切片的方式,比如使用从 0 开始的索引依次访问数组中的元素,这与 Python 的 list 列表是相同的。NumPy 提供了多种类型的索引方式,常用方式有两种:基本切片与高级索引。本节重点讲解基本切片。 基本切片 NumPy 内 阅读全文
posted @ 2022-08-02 17:12 随遇而安== 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 所谓区间数组,是指数组元素的取值位于某个范围内,并且数组元素之间可能会呈现某种规律,比如等比数列、递增、递减等。为了方便科学计算,Python NumPy 支持创建区间数组。 1. numpy.arange() 在 NumPy 中,您可以使用 arange() 来创建给定数值范围的数组,语法格式如下 阅读全文
posted @ 2022-08-02 16:29 随遇而安== 阅读(170) 评论(0) 推荐(0) 编辑