Menu
CoddyTech

重塑

Coddy NumPy 基础 课程的第 9 课,共 18 课。

我们可以使用 reshape 方法创建功能强大的数组。

语法是:np.reshape(ary, newshape)

reshape 会改变数组的形状。新形状是一个元组或列表,其乘积必须与旧形状的乘积相同。

例如:旧形状:(2, 5),乘积:2*5=10。只要乘积是 10,新形状可以是任意数字组合,也就是说,新形状可以是以下任意一种:(1, 10)、(10, 1)、(5, 2)

示例 1

ary = np.arange(10) # --> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
ary = np.reshape(ary, (5, 2))
>>> [[0, 1],
     [2, 3],
     [4, 5],
     [6, 7],
     [8, 9]]

示例 2

ary = np.zeros(6) # --> [0., 0., 0., 0., 0., 0.]
ary = np.reshape(ary, (2, 3))
>>> [[0., 0., 0.],
     [0., 0., 0.]]

示例 3

重塑为更高维度

ary = np.arange(12)
ary = np.reshape(ary, (2, 3, 2))
>>> [[[ 0,  1],
      [ 2,  3],
      [ 4,  5]],

     [[ 6,  7],
      [ 8,  9],
      [10, 11]]]

 

challenge icon

挑战

简单

创建一个包含从 1 递增到 200(包括 200)的 numpy 数组:[1, 2, 3, 4, 5, 6, ..., 200]

并将其重塑为 (20, 10) 的形状

亲手试试

import numpy as np



print(ary)

NumPy 基础中的所有课

自己练习: Python 在线编译器