2
我很難說出我想要的內容,這就是爲什麼我沒有在Google上找到它的原因。讓我先從一個例子開始,然後再製定一般情況。將大小相等的數組合併到平鋪大數組中
假設我們有7個陣列a1, ..., a7
,每個形狀(4, 5)
。我想要一個新的數組,其中7個陣列被佈置是這樣的:
a1 a2 a3
a4 a5 a6
a7 0 0
這個陣列是形狀(3*4, 3*5) == (12, 15)
的,0是np.zeros((4, 5))
。
一般來說,我有C數組a1, ..., aC
,形狀(H, W)
的,我想將其付諸形狀(h*H, w*W)
的陣列,其中h = ceil(sqrt(C))
和w = ceil(C/h)
。 C數組存儲爲一個(C, H, W)
維數組。
什麼是最優雅的方式來做到這一點?我通過迭代必要的索引來一起竊取一些東西,但這並不好,所以我停下了腳步。
速度不是最重要的,數組相當小。
如何被存儲陣列的C數?作爲一個多昏暗的數組或數組列表或其他東西? – Divakar
@Divakar添加了一些細節 – fabian789
使用'np.hstack'創建行,直到用完數組,用零填充最後一行,然後用'np.vstack'連接行。 – Michael