主要内容:三角函数,舍入函数NumPy 中包含了大量的数学函数,它们用于执行各种数学运算,其中包括三角函数、舍入函数等等。下面对它们做详细讲解。 三角函数 NumPy 中提供了用于弧度计算的的 sin()(正弦)、cos()(余弦)和 tan()(正切)三角函数。 示例如下: 输出结果如下: 除了上述三角函数以外,NumPy 还提供了 arcsin,arcos 和 arctan 反三角函数。 若要想验证反三角函数的结果,可以
NumPy 提供了许多字符串处理函数,它们被定义在用于处理字符串数组的 numpy.char 这个类中,这些函数的操作对象是 string_ 或者 unicode_ 字符串数组。如下表所示: NumPy处理字符串数组函数 函数名称 描述 add() 对两个数组相应位置的字符串做连接操作。 multiply() 返回多个字符串副本,比如将字符串“ hello”乘以3,则返回字符串“ hello h
主要内容:bitwise_and(),bitwise_or(),Invert(),left_shift(),right_shift()本节重点讲解 NumPy 的位运算,NumPy 中提供了以下按位运算函数: numpy按位运算函数 序号 函数 位运算符 描述说明 1 bitwise_and & 计算数组元素之间的按位与运算。 2 bitwise_or | 计算数组元素之间的按位或运算。 3 invert ~ 计算数组元素之间的按位取反运算。 4 left_shift << 将二进制数的位数向左
主要内容:1. numpy.resize(),2. numpy.append(),3. numpy.insert(),4. numpy.delete(),5. numpy.argwhere(),6. numpy.unique()本节重点介绍 NumPy 数组元素的增删改查操作,主要有以下方法: 数组元素操作方法 函数名称 描述说明 resize 返回指定形状的新数组。 append 将元素值添加到数组的末尾。 insert 沿规定的轴将元素值插入到指定的元素前。 delete 删掉某个轴上的子数
主要内容:数组变维操作,数组转置操作,修改数组维度操作,连接与分割数组操作NumPy 中包含了一些处理数组的常用方法,大致可分为以下几类: 数组变维操作 数组转置操作 修改数组维度操作 连接与分割数组操作 下面分别对它们进行介绍。 数组变维操作 数组变维操作 函数名称 函数介绍 reshape 在不改变数组元素的条件下,修改数组的形状。 flat 返回是一个迭代器,可以用 for 循环遍历其中的每一个元素。 flatten 以一维数组的形式返回一份数组的副本,对副本的操
主要内容:遍历顺序,指定遍历顺序,修改数组元素值,外部循环使用,迭代多个数组NumPy 提供了一个 nditer 迭代器对象,它可以配合 for 循环完成对数组元素的遍历。 下面看一组示例,使用 arange() 函数创建一个 3*4 数组,并使用 nditer 生成迭代器对象。 示例1: 输出结果: 0 5 10 15 20 25 30 35 40 45 50 55 遍历顺序 在内存中,Numpy 数组提供了两种存储数据的方式,分别是 C-order(行优先顺序)与 F
NumPy 中的广播机制(Broadcast)旨在解决不同形状数组之间的算术运算问题。我们知道,如果进行运算的两个数组形状完全相同,它们直接可以做相应的运算。示例如下: 输出结果如下: [ 1. 4. 9. 16.] 但如果两个形状不同的数组呢?它们之间就不能做算术运算了吗?当然不是!为了保持数组形状相同,NumPy 设计了一种广播机制,这种 机制的核心是对形状较小的数组,在横向或纵向上进行一
主要内容:1. 整数数组索引,2. 布尔数组索引,3. 花式索引(拓展知识)NumPy 与 Python 的内置序列相比,它提供了更多的索引方式。除了在《 Numpy切片和索引》一节用到索引方式外,在 NumPy 中还可以使用高级索引方式,比如整数数组索引、布尔索引以及花式索引,本节主要对上述三种索引方式做详细介绍。 高级索引返回的是数组的副本(深拷贝),而切片操作返回的是数组视图(浅拷贝)。如果您对副本和视图的概念陌生,可直接跳转学习《 NumPy副本和视图》一节。 1
主要内容:基本切片,多维数组切片在 NumPy 中,如果想要访问,或修改数组中的元素,您可以采用索引或切片的方式,比如使用从 0 开始的索引依次访问数组中的元素,这与 Python 的 list 列表是相同的。 NumPy 提供了多种类型的索引方式,常用方式有两种:基本切片与高级索引。本节重点讲解基本切片。 基本切片 NumPy 内置函数 slice() 可以用来构造切片对象,该函数需要传递三个参数值分别是 start(起始索引
主要内容:1. numpy.arange(),2. numpy.linspace(),3. numpy.logspace所谓区间数组,是指数组元素的取值位于某个范围内,并且数组元素之间可能会呈现某种规律,比如等比数列、递增、递减等。 为了方便科学计算,Python NumPy 支持创建区间数组。 1. numpy.arange() 在 NumPy 中,您可以使用 arange() 来创建给定数值范围的数组,语法格式如下: numpy.arange(start, stop, step, dtype
主要内容:numpy.empty(),numpy.zeros(),numpy.ones(),numpy.asarray(),numpy.frombuffer(),numpy.fromiter()在《 NumPy Ndarray对象》一节,介绍了创建 ndarray 数组的基本方法,除了使用 array() 方法外,NumPy 还提供了其他创建 ndarray 数组的方法。本节对这些常用方法做简单介绍。 numpy.empty() numpy.empty() 创建未初始化的数组,可以指定创建数组的
主要内容:ndarray.shape,ndarray.reshape(),ndarray.ndim,ndarray.itemsize,ndarray.flags本节介绍 Numpy 数组的常用属性。 ndarray.shape shape 属性的返回值一个由数组维度构成的元组,比如 2 行 3 列的二维数组可以表示为 ,该属性可以用来调整数组维度的大小。 示例如下,输出了数组的维度: 输出结果: (2,3) 通过 shape 属性修改数组的形状大小: 输出结果: ndarray.reshape
主要内容:数据类型对象,数据类型标识码,定义结构化数据NumPy 作为 Python 的扩展包,它提供了比 Python 更加丰富的数据类型,如表 1 所示: 表1:NumPy数据类型 序号 数据类型 语言描述 1 bool_ 布尔型数据类型(True 或者 False) 2 int_ 默认整数类型,类似于 C 语言中的 long,取值为 int32 或 int64 3 intc 和 C 语言的 int 类型一样,一般是 int32 或 int 64
主要内容:创建ndarray对象,ndim查看数组维数,reshape数组变维NumPy 定义了一个 n 维数组对象,简称 ndarray 对象,它是一个一系列相同类型元素组成的数组集合。数组中的每个元素都占有大小相同的内存块,您可以使用索引或切片的方式获取数组中的每个元素。 ndarray 对象有一个 dtype 属性,该属性用来描述元素的数据类型,相关知识会在《NumPy数据类型》一节做详细介绍 。 ndarray 对象采用了数组的索引机制,将数组中的每个元素映射到内存
主要内容:Windows系统安装,MacOSX系统安装,Linux系统安装NumPy 是 Python 的第三方扩展包,但它并没有包含在 Python 标准库中,因此您需要单独安装它。本节介绍如何在不同的操作系统上安装 NumPy。 Windows系统安装 在 Windows 系统下安装 NumPy 有两种常用方式,下面分别对其进行介绍。 使用 Python 包管理器 来安装 NumPy,是一种最简单、最轻量级的方法。只需执行以下命令即可: pip install nu