温馨提示×

Numpy中怎么改变数组的形状

小亿
88
2023-11-29 18:55:41
栏目: 编程语言

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

0