本文内容来自于numpy官方教程 Shape Manipulation 一章
要注意的是reshape不会改变数组本身形状,resize方法则会。
方法一、使用reshape函数或者使用ndarray的reshape方法(不会改变数组本身形状)
numpy.reshape(a,newshape,order='C')
其中a是输入的数组,newshape是要输出的新形状,order='C'意思是用C语言风格(基本不会用到)
方法二、将数值赋值到shape属性中(会改变数组本身的形状)
方法三、使用resize函数或者使用ndarray的resize方法(会改变数组本身形状)
例如:
等价于np.resize(a,(2,2))
此外,使用flatten方法和ravel方法可以使得数组展平都会改变数组本身。然而,flatten是深copy,ravel是浅copy(或者说view)