Numpy的核心特征之一就是N-维数组对象——ndarray。ndarray是Python中一个快速、灵活的大型数组容器。数组允许使用类似于标量的操作语法在整块数据上进行数学计算。
1.生成ndarray
生成数组最简单的方式就是array函数,array函数接收任意的序列行对象(也包括其他的数组),生成一个新的包含数据的Numpy数组。
例:将python列表转化为数组。
或者利用numpy数组生成函数进行操作
以np.arange举例,取值范围从0-49,步长为2生成Numpy数组:
数组生成函数
函数名 | 描述 |
---|---|
array | 将输入数据(可以是列表、元组、数组以及其他序列)转换为ndarray,如不显式指明数据类型,则自动推断;默认复制所有的输入数据 |
asarray | 将输入转换为ndarray,但如果输入已经是ndarray则不再赋值 |
arange | Python内建函数range的数组版,返回一个数组 |
ones | 根据给定形状和数据类型生成全为1的数组 |
ones_like | 根据所给的数组生成一个形状一样全为1的数组 |
zeros | 根据给定形状和数据类型生成全为0的数组 |
zeros_like | 根据所给的数组生成一个形状一样全为0的数组 |
empty | 根据给定形状生成一个形状一样但没有初始化数值的空数组(注意,空不代表为0) |
empty_like | 根据所给数组生成一个形状一样但没有初始化数值的空数组 |
full | 根据给定形状和数据类型生生成指定数值的数组 |
full_like | 根据所给的数组生成一个形状一样但内容是指定数值的数组 |
eye, identity | 生成一个N × N特征举证(对角线位置都是1,其余位置是0) |
2.查看ndarray的属性与数据类型
查看数组的维数用.ndim
方法
查看数组的形状用.shape
方法
查看数组的数据类型用.dtype
方法
查看数组的大小用.size
方法
查看数组的每个元素所占字节数用.itemsize
方法
举例:查看数组Z的维数、形状、数据类型、大小、以及计算数组的内存大小
3.ndarray的数据类型
numpy的数据类型,即dtype,是一个特殊的对象,它包含了ndarry需要为某一种类型数据所申明的内存块信息(也称为元数据,即表示数据的数据),其可以在创建数组时指定。:
也可以由.astype
方法显式地转换数组的数据类型
例:int类型与float类型的互转,注意,当float类型转为int类型后,小数点后被抹去
dtype通常按照一个方式命令:类型名,比如int与float,后面接上表明每个元素位数的数字。一个标准的双精度浮点值(pythpn中称为float),将使用8字节或64位,因此这个类型在Numpy中称为float64。
Numpy数据类型
类型 | 类型代码 | 描述 |
---|---|---|
int8, uint8 | i1,u1 | 有符号和无符号的8数位整数 |
int16, uint16 | i2,u2 | 有符号和无 |