在 Python 中将 3D 数组转换为 2D 数组
在本教程中,我们将讨论在 Python 中将 3D 数组转换为 2D 数组的方法。
在 Python 中使用 numpy.reshape()
函数将 3D 数组转换为 2D 数组
[numpy.reshape()
函数](numpy.reshape-NumPy v1.20 手册)更改数组形状而不更改其数据。numpy.reshape()
返回具有指定尺寸的数组。例如,如果我们有一个尺寸为 (4, 2, 2)
的 3D 数组,我们想将其转换为尺寸为 (4, 4)
的 2D 数组。
以下代码示例向我们展示了如何在 Python 中使用 numpy.reshape()
函数将尺寸为 (4, 2, 2)
的 3D 数组转换为尺寸为 (4, 4)
的 2D 数组。
import numpy
arr = numpy.array(
[[[0, 1], [2, 3]], [[4, 5], [6, 7]], [[8, 9], [10, 11]], [[12, 13], [14, 15]]]
)
newarr = arr.reshape(4, 2 * 2)
print(newarr)
输出:
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]
[12 13 14 15]]
在上面的代码中,我们首先使用 numpy.array()
函数初始化 3D 数组 arr
,然后使用 numpy.reshape()
函数将其转换为 2D 数组 newarr
。
下面的代码示例演示了由于某种原因,如果我们不知道 3D 数组的确切尺寸,则可以执行相同操作的另一种方法。
import numpy
arr = numpy.array(
[[[0, 1], [2, 3]], [[4, 5], [6, 7]], [[8, 9], [10, 11]], [[12, 13], [14, 15]]]
)
newarr = arr.reshape(arr.shape[0], (arr.shape[1] * arr.shape[2]))
print(newarr)
输出:
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]
[12 13 14 15]]
在上面的代码中,我们使用 numpy.shape()
函数指定 newarr
的尺寸。numpy.shape() 函数返回一个元组,其中包含数组每个维度中的元素。
相关文章
在 Python 中将 Tensor 转换为 NumPy 数组
发布时间:2024/03/12 浏览次数:118 分类:Python
-
在 Python 中,可以使用 3 种主要方法将 Tensor 转换为 NumPy 数组:Tensor.numpy()函数,Tensor.eval()函数和 TensorFlow.Session()函数。
在 Python 中将 CSV 读取为 NumPy 数组
发布时间:2024/03/12 浏览次数:118 分类:Python
-
本教程演示如何在 Python 中将 CSV 读取为 NumPy 数组。
将 PIL 图像转换为 NumPy 数组
发布时间:2024/03/12 浏览次数:153 分类:Python
-
在 Python 中,可以使用两种主要方法将 PIL 图像转换为 3 维 NumPy 数组:numpy.array()函数和 numpy.asarray()函数。