np.reshape() 如何重塑具有指定三个参数的矩阵? [复制]

Posted

技术标签:

【中文标题】np.reshape() 如何重塑具有指定三个参数的矩阵? [复制]【英文标题】:How does np.reshape() reshape a matrix having three parameters specified? [duplicate] 【发布时间】:2021-10-04 07:24:36 【问题描述】:
matrix = np.array([[10,450],[110,250],[200,500]])

reshaped = matrix.reshape(-1,1,2)

矩阵将如何重塑? (-1,1,2)是什么意思?

【问题讨论】:

花时间阅读文档,numpy.org/doc/stable/reference/generated/numpy.reshape.html 嗯,我知道在 np.reshape() 函数中使用了两个参数,但是正如代码和问题所述,有三个参数,为什么我们给三个参数,它会做什么? 结果中的每个维度都有一个数字。 reshape 可以更改维数,在本例中从 2d 更改为 3d。鉴于数组的存储和操作方式,处理 3d(甚至更高)数组与 2d 或 1d 没有什么不同。 【参考方案1】:

reshape 中有 3 个参数,因此结果将是一个 3 维数组。 第 2 维的大小为 1,第 3 维的大小为 2。 第一个维度的-1 表示该第一个维度的大小是即时计算的,这样所有元素都可以很好地拟合。

在这种特定情况下,结果是

array([[[ 10, 450]],
       [[110, 250]],
       [[200, 500]]])

【讨论】:

以上是关于np.reshape() 如何重塑具有指定三个参数的矩阵? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

Kubernetes 学习总结(33)—— Kubernetes 是如何重塑虚拟机的

Kubernetes 学习总结(33)—— Kubernetes 是如何重塑虚拟机的

reshape中的-1

numpy

Keras LSTM 错误 - Logits 和标签应该具有相同的形状

numpy求两个矩阵中不同元素的个数