Python科学计算库之NumPy基本操作

NumPy基本操作

数组与标量、数组之间的运算
数组的矩阵积(matrix product)
数组的索引与切片
数组的转置与轴对换
通用函数:快速的元素级数组成函数
聚合函数
np.where函数
np.unique函数

ndarray-数组与标量、数组之间的运算

数组不用循环即可对每个元素执行批量的算术运算操作,这个过程叫做矢量化,即用数组表达式代替循环的做法。
矢量化数组运算性能比纯Python方式快上一两个数据级。
大小相等的两个数组之间的任何算术运算都会将其运算应用到元素级上的操作。
**元素级操作:**在NumPy中,大小相等的数组之间的运算,为元素级运算,即只用于位置相同的元素之间,所得的运算结果组成一个新的数组,运算结果的位置跟操作数位置相同。
Python科学计算库之NumPy基本操作_第1张图片

ndarray-数组与标量、数组之间的运算

Python科学计算库之NumPy基本操作_第2张图片
Python科学计算库之NumPy基本操作_第3张图片

ndarray-数组的矩阵积

矩阵:多维数组即矩阵
矩阵积(matrix product):两个二维矩阵(行和列的矩阵)满足第一个矩阵的列数与第二个矩阵的行数相同,那么可以进行矩阵的乘法,即矩阵积,矩阵积不是元素级的运算。也称为点积、数量积。
Python科学计算库之NumPy基本操作_第4张图片
Python科学计算库之NumPy基本操作_第5张图片

ndarray-多维数组的索引

Python科学计算库之NumPy基本操作_第6张图片
Python科学计算库之NumPy基本操作_第7张图片

ndarray-数组的切片

Python科学计算库之NumPy基本操作_第8张图片
Python科学计算库之NumPy基本操作_第9张图片

ndarray-花式索引

花式索引(Fancy indexing)指的是利用整数数组进行索引的方式。
Python科学计算库之NumPy基本操作_第10张图片

ndarray-布尔类型索引

利用布尔类型的数组进行数据索引,最终返回的结果是对应索引数组中数据为True位置的值。
Python科学计算库之NumPy基本操作_第11张图片
Python科学计算库之NumPy基本操作_第12张图片

ndarray-数组转置与轴对换

数组转置是指将shape进行重置操作,并将其值重置为原始shape元组的倒置,比如原始的shape值为:(2,3,4),那么转置后的新元组的shape的值为: (4,3,2)f
对于二维数组而言(矩阵)数组的转置其实就是矩阵的转置
可以通过调用数组的transpose函数或者T属性进行数组转置操作
Python科学计算库之NumPy基本操作_第13张图片
Python科学计算库之NumPy基本操作_第14张图片

ndarray-通用函数/常用函数

ufunc:numpy模块中对ndarray中数据进行快速元素级运算的函数,也可以看做是简单的函数(接受一个或多个标量值,并产生一个或多个标量值)的矢量化包装器。
主要包括一元函数和二元函数
ndarray-通用函数/常用函数(一元函数)
Python科学计算库之NumPy基本操作_第15张图片

Python科学计算库之NumPy基本操作_第16张图片
Python科学计算库之NumPy基本操作_第17张图片
ndarray-通用函数/常用函数(二元函数)
Python科学计算库之NumPy基本操作_第18张图片
Python科学计算库之NumPy基本操作_第19张图片

ndarray-聚合函数

聚合函数是对一组值(eg一个数组)进行操作,返回一个单一值作为结果的函数。
当然聚合函数也可以指定对某个具体的轴进行数据聚合操作;常将的聚合操作有:
平均值、最大值、最小值、标准差等等
Python科学计算库之NumPy基本操作_第20张图片
Python科学计算库之NumPy基本操作_第21张图片

np.where函数

np.where函数是三元表达式x if condition else y的矢量化版本
Python科学计算库之NumPy基本操作_第22张图片
Python科学计算库之NumPy基本操作_第23张图片

np.unique函数

案例:将数组中的所有异常数字替换为0,比如将NaN替换为0
Python科学计算库之NumPy基本操作_第24张图片

你可能感兴趣的:(深度学习,python,人工智能,python,人工智能)