Numpy是最早用于数值计算的库,主要用于矩阵相关的运算。主要针对多维数组(Ndarray)的科学计算。为方便使用,在Numpy上开发了Pandas。Pandas是常用的处理excel表格的数值计算库。在基于Numpy的主要针对数据框(DataFrame)和序列(Series)的科学计算。
本文展开对Numpy的学习。
0.数组生成
1.数组的基本属性
数组的基本属性主要包括:形状、大小、类型、维数。
形状:arr.shape
大小:arr.size
类型:arr.dtype
维数:arr.ndim
2.数组数据选取
2.1一维数组选取
取第n个数:arr[n-1]
取最后一个数:arr[-1]
取第n~m的数:arr[n,m+1] *后推一位数,左闭右开
取n以后的数:arr[n:]
取n以前的数:arr[:n]
取n到倒数m位置:arr[n:-m]
取大于v的元素:arr[arr>3]
2.2多维数组选取
取第n行:arr[n-1]
取第n和n+1行:arr[n-1,n+1]
取第n行以前的行:arr[:n-1]
取第n列:arr[:,n-1]
取n~m列:arr[:,n-1:m-1]
取n列之前的列:arr[:,:n-1]
取n列之后的列:arr[:,n-1:]
取n~m行、p~q列:arr[n-1:m,p-1,q]
3.数据预处理
3.1数组类型转换
转float类型:arr.astype(np.float64)
转str类型:arr.astype(np.string_)
3.2缺失值处理
step1:判断是否含有缺失值,将缺失值找出
np.isnan(arr)
step2:对缺失值进行填充
arr[np.isnan(arr)]=0
3.3重复值处理
arr.unique()
4.数组重塑
4.1一维数组重塑
arr.reshape(n,m)
4.2多维数组重塑
arr.reshape(n,m)
4.3数组转置
arr.T
5.数组合并
5.1横向合并-
concatenate方法:np.concatenate([arrr1,arr2],axis=1)
hstack方法:np.hstack((arr1,arr2))
column_stack方法:np.column_stack((arr1,arr2))
5.2纵向合并-
concatenate方法:np.concatenate([arrr1,arr2],axis=0)
hstack方法:np.vstack((arr1,arr2))
row_stack方法:np.column_stack((arr1,arr2))
6.常用数据分析函数
6.1元素级函数--
元素级函数就是针对数组中的每个元素执行相同的函数操作
以下为主要函数:
np.square(arr)
np.sqrt(arr)
6.2描述统计函数--
描述统计函数是对整个numpy数组或者某条轴的数据击姓统计运算。
以下为主要函数:
arr.sum(axis=1)
6.3条件函数--
np.where(condition,x,y)
类似于excel中的if(condition,True,Flase)函数,若条件为真则返回x,若为假返回y。
np.where(arr>60,'及格','不及格')
6.4集合关系--
每个数组都都可当作集合,几何关系就是两数组之间的关系,主要有包含、交集、并集、差集四种。
包含:np.inld(arr1,arr2)
交集:np.intersectld(arr1,arr2)
并集:np.unionld(arr1,arr2)
差集:np.setdiffld(arr1,arr2)