reshape()函数作用
Numpy中的reshape()函数用于将数组的维度重新设置,这个函数的目的是调整数组的形状,而不是改变原数组中的任何数值。该函数返回一个新数组,该数组与原数组共享数据,但在调整维度时会创建新的数组。
使用方法
Numpy的reshape()函数可以以几种不同的方式使用。如果要将原数组调整为一个新的形状,可以使用以下语法:
numpy.reshape(array, newshape, order=’C’)
参数说明:
- array:待调整的数组
- newshape:新的数组形状,可以是一个整数,也可以是一个元组
- order:可选参数,表示在新数组中元素的存储顺序,可选项包括“C”和“F”,分别表示按行和按列存储,缺省值为“C”。
实例1
下面我们通过一个简单的实例来解释reshape()函数的用法:
import numpy as np
# 创建一个3x3的二维数组
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr)
# 将二维数组转换为一维数组
arr_1d = np.reshape(arr, -1)
print(arr_1d)
输出:
[[1 2 3]
[4 5 6]
[7 8 9]]
[1 2 3 4 5 6 7 8 9]
以上代码创建了一个3x3的二维数组,然后使用reshape()函数将其转换为一个一维数组。其中,参数-1表示根据原数组自动计算数组长度。
实例2
下面我们通过另一个实例来展示reshape()函数的用法:
import numpy as np
# 创建一个1x9的一维数组
arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
print(arr)
# 将一维数组转换为3x3的二维数组
arr_2d = np.reshape(arr, (3, 3))
print(arr_2d)
# 将二维数组转换为3x3x1的三维数组
arr_3d = np.reshape(arr_2d, (3, 3, 1))
print(arr_3d)
输出:
[1 2 3 4 5 6 7 8 9]
[[1 2 3]
[4 5 6]
[7 8 9]]
[[[1]
[2]
[3]]
[[4]
[5]
[6]]
[[7]
[8]
[9]]]
以上代码创建了一个1x9的一维数组,使用reshape()函数将其转换为一个3x3的二维数组,然后再将二维数组转换为一个3x3x1的三维数组。可以看出,reshape()函数可以用于不同维度之间的相互转换。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解Numpy reshape()(改变数组形状)函数的作用与使用方法 - Python技术站