ndarray数组基本结构和操作

ndarray数组基本结构和操作写在前面一、创建ndarray(四种)二、属性操作(六个)三、基本运算(七个)四、索引和切片1. 一维数组2. 多维数组3. 查找索引五、统计方法(七类)六、随机数np.random1. 创建随机ndarray数组2. 随机打乱ndarray数组3. 随机选取元素(一维)七、线性代数八、文件读写与保存1. 文本读取2. 文件保存九、Numpy应用举例1. 计算激活函数Sigmoid和ReLU2. 图像翻转和裁剪

写在前面

人生苦短,我用python。

为什么使用ndarray:

一、创建ndarray(四种)

二、属性操作(六个)

三、基本运算(七个)

四、索引和切片

1. 一维数组

2. 多维数组

3. 查找索引

五、统计方法(七类)

对整个数组或某个轴向的数据进行统计计算。 以下方法既可以当做数组的实例方法,也可以当做Numpy函数使用

六、随机数np.random

1. 创建随机ndarray数组

2. 随机打乱ndarray数组

3. 随机选取元素(一维)

七、线性代数

线性代数(如矩阵乘法、矩阵分解、行列式以及其他方阵数学等)是任何数组库的重要组成部分,Numpy中实现了线性代数中常用的各种操作,并形成了numpy.linalg线性代数相关的模块。

八、文件读写与保存

1. 文本读取

Numpy可以方便的进行文件读写,如下面这种格式的文本文件:

文本数据

2. 文件保存

Numpy提供了save和load接口,直接将数组保存成文件(保存为.npy格式),或者从.npy文件中读取数组。

九、Numpy应用举例

1. 计算激活函数Sigmoid和ReLU

使用ndarray数组可以很方便的构建数学函数,并利用其底层的矢量计算能力快速实现计算。下面以神经网络中比较常用激活函数Sigmoid和ReLU为例,介绍代码实现过程。

relu和sigmoid函数图像

2. 图像翻转和裁剪

图像是由像素点构成的矩阵,其数值可以用ndarray来表示。将上述介绍的操作用在图像数据对应的ndarray上,可以很轻松的实现图片的翻转、裁剪和亮度调整,具体代码和效果如下所示。

lotus

lotus_01

lotus_02

lotus_03

lotus_04

lotus_05

lotus_06

lotus_07

lotus_08

lotus_09

lotus_10