如何展平 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 数组的最后两个维度? [复制]的主要内容,如果未能解决你的问题,请参考以下文章