从三维numpy阵列中提取二维图像

2024-09-29 02:29:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个三维数组的形式(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

然而,这种语法似乎不起作用。我该怎么做


Tags: andinfor时间语法range数组形式
1条回答
网友
1楼 · 发布于 2024-09-29 02:29:24

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

因此,高级的indexing涉及一个arrayindexing特异性axis

例如,从index1开始:

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

因此,如果您想从第三个axisindext中获取element,则需要从另一个axis中选择所有的elements,只使用一个正则冒号(:),然后为最后一个index指定t

所以你想做:

A[:, :, t] 

相关问题 更多 >