迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Python 中将 3D 数组转换为 2D 数组

作者:迹忆客 最近更新:2024/03/12 浏览次数:

在本教程中,我们将讨论在 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() 函数返回一个元组,其中包含数组每个维度中的元素。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Python 中将 Tensor 转换为 NumPy 数组

发布时间:2024/03/12 浏览次数:118 分类:Python

在 Python 中,可以使用 3 种主要方法将 Tensor 转换为 NumPy 数组:Tensor.numpy()函数,Tensor.eval()函数和 TensorFlow.Session()函数。

将 PIL 图像转换为 NumPy 数组

发布时间:2024/03/12 浏览次数:153 分类:Python

在 Python 中,可以使用两种主要方法将 PIL 图像转换为 3 维 NumPy 数组:numpy.array()函数和 numpy.asarray()函数。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便