如何展平 numpy 数组的最后两个维度? [复制]

Posted

技术标签:

【中文标题】如何展平 numpy 数组的最后两个维度? [复制]【英文标题】:How do you flatten the last two dimensions of an numpy array? [duplicate] 【发布时间】:2021-08-29 15:37:42 【问题描述】:

例如,给定一个维度为 (132, 82, 100) 的 numpy 数组,结果维度将是 (132, 8200)

【问题讨论】:

只需创建一个具有所需尺寸的新数组,然后根据需要插入值。 你试过'reshape'方法或'view'功能吗? 这能回答你的问题吗? How to flatten only some dimensions of a numpy array 【参考方案1】:

您可以使用reshape() 函数来改变数组的形状。使用 -1 作为 reshape 的参数告诉 numpy 推断那里的尺寸。

arr = np.zeros((132, 82, 100))
arr = arr.reshape(*arr.shape[:-2], -1)
print(arr.shape)
# Out: (132, 8200)

【讨论】:

您的答案将压平除第一个之外的所有维度。不仅是最后两个。 @yanziselman 是的,很好,批准了您的编辑。 这确实帮助了我,谢谢!

以上是关于如何展平 numpy 数组的最后两个维度? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何在不使用 NumPy 复制的情况下展平多维数组的轴?

如何在 Numpy 中将数组展平为矩阵?

Numpy:如何使用数组的最后一个维度作为值?

如何正确连接两个一维数组而不展平?

如何在 PHP 中将多维数组“展平”为简单数组? [复制]

如何在 PHP 中将多维数组“展平”为简单数组? [复制]