改变numpy数组形状的7种常用方法

本文将会介绍numpy数组改变形状的7种常用的方法。

方法一:shape

通过给ndarray的属性shape重新赋值来修改数组的形状
在这里插入图片描述

方法二:reshape

reshape(a, newshape[, order])
在这里插入图片描述
reshape中还可以只指定一维,另一维为-1,它会自动匹配相应的行或列。
在这里插入图片描述

方法三:reval

ravel(a[, order])
ravel返回的是一个包含所有元素的一维数组。相当于reshape(-1)。
在这里插入图片描述

方法四:flatten

ndarray.flatten([order])
在这里插入图片描述

方法五:np.newaxis

np.newaxis的功能就是增加新的维度,添加在不同的地方,则会在不同的地方增加维度。
例如下图,给array2添加一个np.newaxis,就相当于新数组在np.newaxis位置的维度是1,另一个维度用原数组元素填充。可以根据你的需要添加多个np.newaxis。
在这里插入图片描述

方法六:squeeze

squeeze(a[, axis])
squeeze也可以展平数组,但是它比较特殊,它只能展平维度是1的部分。
如下图,对于shape是(5,2)的数组它完全没有修改,但是对于array2_1,array2_2,array2_3中,将维度为1的全部删掉了。
在这里插入图片描述

方法七:np.c_

numpy.c_
不是函数,返回的是一个连接后的ndarray或者是一个矩阵。c表示column,表示从列上增加。
在这里插入图片描述
好了,本文到这里就结束了,其他内容想了解的可以参考官方文档(https://numpy.org.cn/reference/routines/array-manipulation.html#改变数组形状)
感谢您的阅读~

猜你喜欢

转载自blog.csdn.net/youzi85/article/details/128648878