簡體   English   中英

按最外面的索引將Numpy 3D數組轉換為2D數組

[英]Numpy 3d array to 2d array by outermost index

我有一個像二維數組的數組

+------+    +------+
|      |    |      |
|  A   |    |  B   |
|      |    |      |
+------+    +------+

我想“刪除”最外面的括號,如

+------+------+
|      |      |
|  A   |  B   |
|      |      |
+------+------+

例如我有

[[[1,1,1],[2,2,2]],[[3,3,3],[4,4,4]]]

我想得到

[[1,1,1,3,3,3],[2,2,2,4,4,4]]

換句話說,我需要將(7,3,1000)形狀的數組附加到(3,7000)中

怎么辦呢?

一種方法是在第一和第二個軸之間交換軸,然后重塑形狀以合並最后兩個軸-

arr.swapaxes(0,1).reshape(arr.shape[1],-1)

樣品運行-

In [9]: arr = np.array([[[1,1,1],[2,2,2]],[[3,3,3],[4,4,4]]])

In [10]: arr.swapaxes(0,1).reshape(arr.shape[1],-1)
Out[10]: 
array([[1, 1, 1, 3, 3, 3],
       [2, 2, 2, 4, 4, 4]])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM