本文小编为大家详细介绍“PythonNumpy中ndarray的常见操作实例分析”,内容详细,步骤清晰,细节处理妥当,希望这篇“PythonNumpy中ndarray的常见操作实例分析”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。NumPy(Numerical Python)是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix)),支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。
Numpy中主要使用ndarray来处理N维数组,Numpy中的大部分属性和方法都是为ndarray服务的,所以掌握Numpy中ndarray的常见操作非常有必要!NumPy的主要对象是同构多维数组。它是一个元素表(通常是数字),所有类型都相同,由非负整数元组索引。在NumPy维度中称为轴 。
下面所示的例子中,数组有2个轴。第一轴的长度为2,第二轴的长度为3。ndarray.ndim : 数组的轴(维度)的个数。在Python世界中,维度的数量被称为rank。ndarray.shape :数组的维度。这是一个整数的元组,表示每个维度中数组的大小。对于有 n 行和 m 列的矩阵,shape 将是 (n,m)。因此,shape 元组的长度就是rank或维度的个数 ndim。ndarray.size :数组元素的总数。这等于 shape 的元素的乘积。ndarray.dtype :一个描述数组中元素类型的对象。可以使用标准的Python类型创建或指定dtype。另外NumPy提供它自己的类型。例如numpy.int32、numpy.int16和numpy.float64。ndarray.itemsize :数组中每个元素的字节大小。例如,元素为 float64 类型的数组的 itemsize 为8(=64/8),而 complex32 类型的数组的 itemsize 为4(=32/8)。它等于 ndarray.dtype.itemsize 。在同一个ndarray中,存储的是同一类型的数据,ndarray常见的数据类型包括:astype(dtype[, order, casting, subok, copy]):修改ndarray中的数据类型。传入需要修改的数据类型,其他关键字参数可以不关注。NumPy主要通过np.array()
函数来创建ndarray数组。也可以在创建时显式指定数组的类型:也可以通过使用np.random.random
函数来创建随机的ndarray数组。通常,数组的元素最初是未知的,但它的大小是已知的。因此,NumPy提供了几个函数来创建具有初始占位符内容的数组。这就减少了数组增长的必要,因为数组增长的操作花费很大。
函数zeros
创建一个由0组成的数组,函数 ones
创建一个完整的数组,函数empty
创建一个数组,其初始内容是随机的,取决于内存的状态。默认情况下,创建的数组的dtype是 float64 类型的。为了创建数字组成的数组,NumPy提供了一个类似于range
的函数,该函数返回数组而不是列表。与许多矩阵语言不同,乘积运算符*
在NumPy数组中按元素进行运算。矩阵乘积可以使用@
运算符(在python> = 3.5中)或dot
函数或方法执行:某些操作(例如+=
和 *=
)会更直接更改被操作的矩阵数组而不会创建新矩阵数组。当使用不同类型的数组进行操作时,结果数组的类型对应于更一般或更精确的数组(称为向上转换的行为)。许多一元操作,例如计算数组中所有元素的总和,都是作为ndarray
类的方法实现的。默认情况下,这些操作适用于数组,就像它是一个数字列表一样,无论其形状如何。但是,通过指定axis 参数,您可以沿数组的指定轴应用操作:一维的数组可以进行索引、切片和迭代操作的,就像列表和其他Python序列类免费云主机域名型一样。多维的数组每个轴可以有一个索引。这些索引以逗号分隔的元组给出:几个数组可以沿不同的轴堆叠在一起,例如:np.vstack()
函数和np.hstack()
函数column_stack()
函数将1D数组作为列堆叠到2D数组中。使用hsplit()
,可以沿数组的水平轴拆分数组,方法是指定要返回的形状相等的数组的数量,或者指定应该在其之后进行分割的列:
同理,使用vsplit()
,可以沿数组的垂直轴拆分数组,方法同上。读到这里,这篇“PythonNumpy中ndarray的常见操作实例分析”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注百云主机行业资讯频道。
本篇内容主要讲解“python面积图之怎么实现曲线图的填充”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python面积图之怎么实现曲线图的填充”吧!用法:参数说明:当然这样时没有多大意义的,只是想展示出一个比较明…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。