阅读量:2
在NumPy中,可以使用reshape()函数来改变数组的形状。以下是使用reshape()函数改变数组形状的示例:
import numpy as np # 创建一个一维数组 arr = np.array([1, 2, 3, 4, 5, 6]) # 将一维数组转换为二维数组 arr_2d = arr.reshape(2, 3) print(arr_2d) # 输出: # [[1 2 3] # [4 5 6]] # 创建一个二维数组 arr_2d = np.array([[1, 2, 3], [4, 5, 6]]) # 将二维数组转换为一维数组 arr_1d = arr_2d.reshape(6) print(arr_1d) # 输出: # [1 2 3 4 5 6] # 可以使用-1来自动推断数组的形状 arr_1d = arr_2d.reshape(-1) print(arr_1d) # 输出: # [1 2 3 4 5 6] # 创建一个三维数组 arr_3d = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]) # 将三维数组转换为二维数组 arr_2d = arr_3d.reshape(4, 2) print(arr_2d) # 输出: # [[1 2] # [3 4] # [5 6] # [7 8]]
在使用reshape()函数改变数组形状时,需要确保新形状的总元素个数与原数组的总元素个数相等,否则会抛出ValueError异常。