###numpy介绍
numpy为Python的一种开源的数值计算扩展,用来存储和处理矩阵很高效,通过import numpy 引入
####函数介绍
array() 创建一个数组  实例 a = numpy.array([1,2,3])   //输出(shift+enter): array([1,2,3])
zeros() 创建一个元素全为零的数组  实例 a = numpy((3,4))   //输出: 为一个3行4列元素为零的数组
ones() 创建一个元素全为1的数组  实例 a = numpy(3,4)  //输出: 为一个3行4列元素为1的数组
full()  实例 a = numpy((3,4),5)   前一个参数规定数组形状,后一个表示用5填充  //输出为: 一个3行4列元素全为5的数组
eye() 创建一个单位阵  参数表示几行几列   实例  a = numpy.eye(3)  //输出为: 3行3列的单位阵
shape  查看数组或矩阵的维数   实例  a.shape  //输出为:(3,3)
reshape()  给予数组一个新的形状,而不改变它的数据    实例 a.reshape(()) 可以填入参数
arange()  生成一个范围数组  ,单个参数表示从0开始依次递增几个数,两个参数表示范围
实例  numpy.arange(3)  输出 array([0,1,2]) ;  numpy.arange(3,7) 输出  			      array([3,4,5,6])  只包含左边,不包含右边
####indexing介绍
a=numpy.array([[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]])
a[0,1:3]  输出  array([2, 3])  参数表示:0代表第0行,1:3 表示 从第1列到第3列 ,包含第3列不包含第1列
a[numpy.arange(4),0] :  numpy.arange(4)表示数组第0行到第3行  ,第二个参数0表示第0列
a[numpy.arange(4)[0,0,0,0]] : [0,0,0,0] 表示第0列,只是将上面的0写开
a[[0,1,2,3],[0,0,0,0]]  :[0,1,2,3]和numpy.arange(4)等价
以上三种等价
####查看数组中元素数据类型
dtype  查看数组元素数据类型  实例  a.dtype  输出: dtype(‘int32’)
####数组的基本运算
a = numpy.array([[1,2],[3,4]])     b = numpy.array([[5,6],[7,8]])
a + b 等价于 numpy.add(a,b)  对应位置相加(其中有numpy的广播特性,numpy会自动加上)
a-b  等价于numpy.subtract(a,b )  对应位置相减
a*b 等价于numpy.multiply(a,b)   对应位置相乘
a/b 等价于numpy.divide(a,b)  对应位置相除
注意:矩阵不一样
a.dot(b) 等价于 numpy.dot(a,b)  矩阵相乘  (要满足矩阵乘法规则)
a.T  等价于numpy.transpose(a)  矩阵的转置
####常用函数
numpy.sum(a) 对数组a中所以元素求和
numpy.sum(a,axis=0)  对每列求和   axis=1对每行求和
mean函数使用方法和sum类似,,但它是求平均值
numpy.random.random(n) 生成n个0到1之间的随机值
numpy.random.uniform (n,m) 生成一个范围在n到m的随机值
numpy.tile(a,(1,2))  将数组a 中元素重复
numpy.argsort(a) 将数组a递增排序  返回的是下标  ,第二个参数 可以为axis 其值为1 则按列排序