本篇文章介绍了一些Numpy的基础操作。
NumPy 是Python语言的一个扩充程序库。支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。
参考:NumPy 数据类型 | 菜鸟教程 (runoob.com)
Numpy最重要的一个特点是其N维数组对象ndarray,它是一系列同类型数据的集合。
下标以0开始进行集合中元素的索引。
ndarray对象是用于存放同类型元素的多维数组。
ndarray 中的每个元素在内存中都有相同存储大小的区域。
ndarray内容:
一个指向数据的指针
数据类型或dtype,描述在数组中的固定大小值的格子
一个表示数组形状的元组(shape),表示各个维度大小的元组
一个跨度元组(stride)
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
参数说明:
名称 |
描述 |
object |
数组或嵌套的数列 |
dtype |
数组元素的数据类型,可选 |
copy |
标识对象是否需要复制,可选 |
order |
创建数组的样式,C为行方向,F为列方向,A为任意方向(默认) |
subok |
为逻辑值,默认返回一个与基类类型一致的数组 |
ndmin |
指定生成数组的最小维度 |
举个例子:
属性 |
说明 |
ndarray.ndim |
秩,即轴的数量或维度的数量 |
ndarray.shape |
数组的维度,即矩阵n行m列 |
ndarray.size |
数组元素的总个数,相当于上行的n*m |
ndarray.dtype |
ndarray对象的元素类型 |
举个例子:
(1)ndarray.ndim
(2)ndarray.shape
(3)ndarray.size
(4)ndarray.dtype
数据类型对象(numpy.dtype 类的实例)用来描述与数组对应的内存区域是如何使用。
!!!最大的一点是,结构化数据类型的使用。
结构化数据类型,类型字段和对应的实际类型将被创建。
(1)首先创建结构化数据类型
(2)应用实例
(3)取值
类型字段名可以用于存取实际的age列的值。
总代码:
定义一个结构化数据类型 student,包含字符串字段 name,整数字段 age,及浮点字段 marks,并将这个 dtype 应用到 ndarray 对象。
⏰总结:
可以先将dtype定义成一个结构化数据,然后再定义array,定义结构化数据的很多个数据的集合。相当于student=np.dtype()封装成一个类,然后a定义成student的集合。