在数据分析中需要从多个维度来表示数据。
0维:一个数字
一维:一维数组
二维:二维数组
Numpy库是python进行科学计算和数据分析的基础库
在使用前导入 import numpy as np
 
一、多维数组创建与访问
 
一维数组的创建:course=np.array(['Math','Python','Art','English','Database'])
一维数组的访问----索引
numpy中正序倒序均可访问:正序索引范围[0,n-1],倒序索引范围[-n,-1]
访问方式:数组切片操作
1.使用索引列表
例:>>>course[[0,2,4]]     #两层括号,外层括号表示元素访问,内层括号表示列表
结果:array(['Math','Art','Database'])
2.索引可表示为:start:end:step
例:>>>course[1:4]   #步长不写,默认为1,输出索引为1,2,3的元素
3.根据条件筛选数组元素
course = [(course=='Math')|(course=='Art')]
 
二维数组的创建
例:
scores = np.array([[1,2,3],[4,5,6],[7,8,9]])
二维数组的切片
基本格式:arr[row,col]
例:scores[1,0]  #第一行第0列的内容
scores[[1,2]]  #选出第一行与第二行的全部内容
scores[:,[0,1]]  #选出第0列和第一列的全部内容
条件筛选
data = (course=='Math')|(course=='Art') #生成bool型的数组
course为Math和Art的位置为True,其他为False
 
二、多维数据运算 
基本算数运算
        标量与数组之间的运算
         例:给scores中每个数值加5:
              score+5<==>创建一个3行3列且其中元素均为5的二维数组,scores与二维数组相加
         数组与数组之间的运算
                 二维数组与一维数组的计算
                 例:给scores每个数据加上不同的数
                        data = np.array([1,4,5])
                        scores+data
       不同维度的数组能进行运算是因为numpy使用广播机制,也就是对低维数组进行维度扩展
函数运算
         通用函数:一元、二元(指的是函数的参数个数)
          一元:abs、fabs、sqrt......(一个输入数组,返回一个数组)
         二元:add、subtract(两个输入数组,返回一个数组)
         聚合函数
          类似于数据库的操作,支持在行(axsi=1)、列(axsi=0)或全体数组元素上的聚集操作
         如:mean,sum、min、max......
         随机生成函数(都在np.random模块中)
         如:random:随机产生[0,1)间的浮点数
                 randint:随机产生给定范围内的一组整数 
                 uniform:随机产生一组给定范围内服从均匀分布的浮点数
                 normal:随机产生一组给定范围内服从给定均值和方差的正态分布随机数
                 choice:在给定的序列内随机选择元素