使用Ndarray对象的reshape方法,可以在使用arange函数创建一维数组时,直接将其转换为指定行、列数的二维数组。下面的代码将包含6个元素的一维数组转换为2行3列的二维数组。
np.arange(6).reshape(2,3)
上述代码将创建以下数组:
[[0 1 2] [3 4 5]]
即使转换后的数组只有一行,它也是一个二维数组。
np.arange(6).reshape(1,6)
上述代码将创建以下数组:
[[0 1 2 3 4 5]]
reshape方法不会改变原数组的维数,当将创建的数组赋值给变量时,然后对该变量使用reshape方法转换数组时,即可证实这种情况。
如需修改原数组的维数,可以使用Ndarray对象的shape属性。下面的代码是实现与前面示例相同的功能,但是使用的是shape属性,将一个表示数组行、列数的元组赋值给该属性。
np.arange(6).shape =(2,3)
或
np.arange(6).shape = 2,3