在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异常。