定义:一组数据的组织形式。同时可以将数据在多个维度上展开,来代表多个含义。
一维数据 定义:一维数据由对等关系的有序或无序数据构成,采用线性方式组织
定义:是由多个一维数据组成,是一维数据的组合形式
表格是典型的二维数据
定义:由一维或二维数据在新维度上的拓展形成
高维数据 定义:利于最基本的二元关系展示数据间的复杂结构。由键值对组织起来的数据。
1、一个强大的N维数组对象ndarray
2、广播功能函数
3、整合C/C++/Fortran代码的工具
4、线性代数、傅里叶变换、随机数生成等功能
import numpy as np(np表示引用的别名,可以定义为其他的,当然不建议)
N维数组对象:ndarray
数组对象可以去掉元素间运算所需的循环,使一维向量更像一个单个的数据。同时可以提高运算速度。
ndarray是一个多维数组对象,有两部分构成:1、实际数据。2、描述这些数据的元数据(数据维度、数据类型等)
ndarray数组一般要求所有元素类型相同(同质),数组下标从0开始
支持的数据类型
1、从Python中的列表、元组等类型创建ndarray数组
x = np.array(list/tuple)x = np.array(list/tuple,dtype=np.float32)
例子
2、使用NumPy中函数创建ndarray数组,如:arange、ones等
例子
ndarray数组维度变换的常用方法
reshape不改变原数组,而是重新生成一个数组返回,resize则是直接改变原数组
即使用astype定义一个与原数组相同数据类型的数组,也是生成一个新的数组,对原数组进行一个拷贝
3、从字节流中创建
4、从文件中读取特定的格式,创建ndarray数组
索引
切片
索引
其中,将a看成三层,首先由a[1,2,3]来解释。第一层中,索引为1,因为索引是从0开始的,所以表示的是12-23,第二个是2,表示的是第三行:20-23,最后一个是3,表示的是第四个,所以输出的就是23
切片
在第三个例子中,第三个参数通过两个“:”来显示,意味着不在意一个横行的起始与结束,但是要以步长为2来截取。
数组与标量之间的运算,作用于数组中的每一个元素
NumPy一元函数
注意,在使用完一元函数后,判断原数组是否被改变,还是生成了一个新的数组,几乎所有的都是生成了新的数组,想要改变原来的数组,需要将其赋值
NumPy二元函数
https://www.bilibili.com/video/BV1p5411x71g?p=10&spm_id_from=pageDriver