首页 > 解决方案 > 如何将 1d 数组重塑为 2d 数组大小不同的 3d 数组?

问题描述

我想重塑这个数组:np.array(np.arange(15))从 3x3 数组和 3x2 数组构建的 3d 数组。

我试过用 reshape 方法来做,但没有用。

我想也许reshape可以得到一些元组。 a=np.array(np.arange(15)).reshape(1,((3,2),(3,3))) 但我后来看到它不能。

那我该如何重塑呢?有什么好方法吗?

标签: pythonnumpy

解决方案


多维数组不能有不同大小的维度。

但是如果你想要一个元组,你需要将数组分成两部分,第一部分与 3x3 数组的大小匹配,第二部分与 3x2 匹配,此时你将拥有 2 个一维数组,然后重塑它们

arr1 = arr1.reshape((3,3)) 
arr2 = arr2.reshape((3,2))

tuple = arr1, arr2 

推荐阅读