本文已参与「新人创作礼」活动,一起开启掘金创作之路
多维数组对象:ndarray对象
ndarray对象保存同一类型的数据,访问方式类似于列表,通过整数下标进行索引
属性
- shape 返回一个元组,用于表示ndarray各个维度的长度,
- 元组的长度为数的维度,
- 元组的每一个数值代表ndarray每一个维度的长度
ndim ndarray的维度
size ndarray对象中的所有元素个数 相当于各个维度的长度乘积
dtype ndarray 对象中储存的数据类型
itemsize ndarra对象中每个元素的字节数
ndarray对象的创建
-
array 将输入的序列型数据(list、tuple、ndarray等)转换成ndarray对象,并返回一个新对象ndarray对象
-
asarray 将输入的序列(list,tuple等)转换成ndarray对象,并返回新对象,但是,当输入的序列是ndarray对象时,并不会产生新的ndarray对象,指向同一个地址值
-
arange 根据输入的参数,返回等间隔的ndarray对象
-
ones 指定shape,创建一个全为1 的数组
-
ones_like 以另一个ndarray对象的shape为定的shape,创建全为1 的数组
-
zeros 指定shape创建一个全为0的数组
-
zeros_like 以另一个ndarray对象的shape为定的shape,创建全为0 的数组
-
empty 指定创建新数组,只分配空间不填充值,默认数据类型为float64
-
empty_like以另一个ndarray对象的shape为定的shape,建新数组,只分配空间不填充值
-
eye,identity 创建nxn的单位矩阵,对角元素为1,其余为0
ndarray对象的数据类型
- 整数
- 浮点数
- 复数
- 布尔值
- Python对象
- 字符串
ndarray对象的索引,切片和迭代
一维的ndarray对象的索引、切片、和迭代类似于python中对列表的操作
多维的ndarray对象
针对ndarray对象的迭代,一维数组与python的列表相同,多维数组则针第一个维度进行迭代,也可以通过 ndarray对象的flat属性实现对ndarray对象的每个元素的迭代
ndarray对象的shape操作
ndarray对象的shape可以通过多种命令更改,一种是对原来ndarray进行改变,一种是返回一个新对象,不改变原来的数据
- reshape 将ndarray对象的shape按照传入的参数进行修改,返回一个新的ndarray对象
- reval 将多维的ndarray对象的shape改为一维的,返回一个一维的ndarray的对象
- T 返回ndarray对象转置后的结果
- resize 将ndarray对象的shape按照传入的参数进行修改
ndarray对象的基础操作
对于一些用于标量的算数运算符,NumPy可以通过广播的形式作用到ndarray对象的每一个元素上,返回一个或多个新矢量
不足
本文所用的都是比较基础的函数,仍有许多函数不曾涉及