簡體   English   中英

從3D numpy數組中提取2D

[英]Extracting 2 D from 3D numpy array

我有兩個格式為(1000、1000、20)的3D數組。 最后一個維度13是時間戳的索引。 我想通過時間戳逐步遍歷數組並比較數組。 假設我有A(1000,1000,20)和B(1000,1000,20)。

我想要類似的東西

for t in range(0,21):   
     asub = A[,,t]  
     bsub = B[,,t]  
     #compare asub and bsub

但是,該語法似乎不起作用。 我怎樣才能做到這一點?

documentation ,您需要“合並高級索引和基本索引”

因此, 高級 indexing涉及對array特定axis進行indexing

例如,從index 1開始獲取elements

>>> a = np.array([[1,2,3], [4,5,6],[7,8,9]])
>>> a[1:, 1:]
array([[5, 6],
       [8, 9]])

所以,如果你想獲得的element從第三axisindex t ,你需要選擇的所有elements與其它axis與只是一個普通的冒號( : ),然后指定t最后index

所以你想做:

A[:, :, t] 

暫無
暫無

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

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