Numpy入门之数组操作

Numpy入门之数组操作

更改形状

在对数组进行操作时,为了满足格式和计算的要求我们通常要改变其形状。
通过直接修改ndarray的shape属性来改变形状:
Numpy入门之数组操作
另外一个就是最常用的内置函数reshape()函数:numpy.reshape(ndarray,newshape)。通过reshape函数我们可以将numpy数组改成我们所需要的形状,当然前提是前后之间的元素个数要匹配。
Numpy入门之数组操作
reshape除了常规用法外,当newshape=[rows,-1]时,表示根据行数自动确定列数,当newshape = -1时,表示将数组将为一维。
Numpy入门之数组操作

数组转置

在矩阵运算中,我们常常需要对矩阵进行转置运算,在Numpy中,提供了transpose()函数对numpy数组进行转置,或者numpy.ndarray.T。
Numpy入门之数组操作

更改维度

对维度的调整与对形状的调整有些相似,浙在矩阵计算中经常会用到,reshape()函数在某种意义上来讲也可以对原数组维数和维度进行修改,以下我们介绍其他函数。

numpy.squeeze(a,axis = None),从数组形状中删除单维度条目,即把shape为1的维度去掉,如果维度超过1,则会报错。
Numpy入门之数组操作

数组组合

在应用中,常需要对多个数组拼接。
numpy.concatenate([a1,a2,…],axis = 0,out = None)在现有维数上进行拼接,即不会产生新的维度。
Numpy入门之数组操作
numpy.stack(arrays,axis = 0,out = None)拼接数组在一个新产生的维度上。
Numpy入门之数组操作
numpy.vstack(tuple)与numpy.hstack(tuple)分别表示在行与列维上进行数组拼接。
Numpy入门之数组操作

数组拆分

numpy.split(ary,indices_or_sections,axis = 0),可以将一个数组拆分为多个子数组,下面为该函数各参数的解释。
Numpy入门之数组操作
Numpy入门之数组操作
Numpy入门之数组操作
以上便是split()函数拆分数组的用法了,具体还是从例子中体会。