从3D numpy数组中提取2D

时间:2017-10-26 19:16:01

标签: python arrays numpy

我有两个表格的三维数组(1000,1000,20)。 最后一个维度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

但是,该语法似乎不起作用。我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

the documentation开始,您需要“结合高级和基本索引”

所以高级 indexing涉及indexing的{​​{1}}具体axis

例如,从array elements开始采取index

1

因此,如果您希望从>>> a = np.array([[1,2,3], [4,5,6],[7,8,9]]) >>> a[1:, 1:] array([[5, 6], [8, 9]]) element的第三个axis获取index,则需要从另一个t中选择elements {1}}仅使用常规冒号(axis),然后为最后:指定t

所以你想做:

index